-4

我希望 min() 选择列表中的两个最小数字,这可能吗?我应该怎么做?

4

3 回答 3

4

实际上,Math.min 只为您提供列表中最小的一个,因此您只需将它们全部排序并获取您需要的数量:

list = [7,4,5,4,2,23,4,6,4,6];
smalls = list.sort(function(a,b){return a-b}).slice(0,2);
alert(smalls); // shows "2, 4"
于 2013-05-29T19:50:24.400 回答
0

排序有点低效,因为它占用 O(n log n) 时间。你可以一次通过就可以做同样的事情。只需保留初始化为空(或负无穷大)或其他东西的变量。

对于遇到的每个元素,检查两个变量并相应地更新。

它非常简单,但只占用线性时间 O(n)。

于 2013-07-17T16:10:51.837 回答
-1

搜索有关“数学”的文档(它是一个带有许多有用的数学相关函数和变量的 javascript 对象)。

暗示。

于 2013-05-29T19:46:58.023 回答