![](/img/trans.png)
[英]Include negative numbers in a function to find second largest integer in Array
[英]How do I find the largest negative integer in an array?
让 test12 = [-1, -2, -3];
我被困在这一点上。 我在正整数上使用了以下内容,但我不确定要为负数更改什么。
let test = [1 , 2, 3]; var largest= 0; for (i=0; i<=test.length;i++){ if (test[i]>largest) { largest=test[i]; } } console.log(largest);
数组中最大的负整数
你的问题可以有3种解释:
0
最远的负整数0
的负整数只是为了澄清,最小的是“离零最远”。 但这里有所有三种方式:):
const ints = [-3, -2, -1, 0, 1, 2] const negativeInts = ints.filter(i => i < 0) const smallestNegative = Math.min(...negativeInts) const largestNegative = Math.max(...negativeInts) const largestOverall = Math.max(...ints) console.log({smallestNegative, largestNegative, largestOverall}) // -3, -1, 2
希望这可以帮助。 干杯。
只需将largest
初始化为-Infinity
而不是0
。 您还需要遍历输入数组的长度,而不是0
到largest
:
let test12 = [-1, -2, -3]; var largest = -Infinity; for (i = 0; i < test12.length; i++) { if (test12[i] > largest) { var largest = test12[i]; } } console.log(largest);
另一种方法是传播到Math.max
:
let test12 = [-1, -2, -3]; console.log( Math.max(...test12) );
最大的负数是-244
,因此您可以排序并获取第一个索引。
let arr = [-1, -2, -244, -7], [largets] = arr.slice().sort((a, b) => a - b); console.log(largets);
尝试这个..
var array = [-155,3, 6, 2, 56, 32, 5, -89, -32,115,-150]; array.sort(function(a, b) { return a - b; }); console.log(array[0]);
如果您想要一个编程解决方案,例如即使给出全负数组,您的程序也需要执行的编辑,请尝试以下操作:
let test = [-10, -1, -2, -3]; // just Assign largest to the first element in test. // the largest int might not be greater than zero, // but will definitely be larger that any other element in the array. var largest= test[0]; for (i=0; i<=test.length;i++){ if (test[i]>largest) { largest=test[i]; } } console.log(largest);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.