java - 列表模式的长度

标签 java arrays loops

我有一个列表,我试图找到列表条目的组合总和,除了要添加的两个值彼此相等的条目(即 2+2 不会相加)并将它们添加到另一个条目列表。 举个例子:

[1,2,3] would yield the list of sums [3,4,5] because 1+2=5,1+3=4, and 2+3=5

但是,我的问题是不知道会产生多少金额。我在 java 中工作,并且仅限于 native 数组,因此必须先设置数组的大小,然后才能将总和值添加到其中。

我知道我无法找到总和列表的确切大小,因为如果两个元素相同,则总和可能不会被添加,但我正在尝试对其进行粗略估计,所以我不会有大量的数组。

我得到的最接近的“公式”是设置以下内容,但它从来都不是任何列表的最大值

(list length of original numbers * list length of original numbers) / 2

我试图记住时间复杂度,因此不断计算总和的数量,将数组设置为该大小,然后再次循环原始列表将效率不高。

有什么建议吗?

最佳答案

你能将相同的和添加到数组中吗?我的意思是,你的数组是{1,2,3,4,5}。你会打印 1+5 和 2+4 =6 的结果吗? 如果你的答案是肯定的。您可以获取数组的长度,然后将其乘以 1 再除以 2。例如;我们的数组 → {1,2,3,4,5} 长度为 5,结果数组的长度将为 5*4/2=10。

如果你无法定义数组的长度,你可以使用java中的列表。请记住。

关于java - 列表模式的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69080624/

相关文章:

javascript - 在对象数组中添加对象(对象是多维的)

php - 如何使用foreach输出将多条记录插入mysql?

javascript - 在谷歌地图上绘制具有多个信息窗口的多个标记

java - 手动将数据添加到 Java ResultSet

java - 您可以通过转换为列表来检查 char 数组是否包含特定的 char 值吗?

java - android模拟器中的文档路径无效错误

arrays - 为每个循环导入多个声音, ActionScript 3

java - 为什么 "implements Runnable"优先于 "extends Thread"?

java - 帮助将 ArrayList 与我的结果集一起使用

arrays - 数组范围错误 - 经典 ASP