色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

javascript 數組算法

馮子軒1年前7瀏覽0評論

JavaScript 數組常見的算法問題包括排序、查找、去重等。

排序是數組常用的操作之一,通常可以使用 sort 函數來實現數組排序。例如:

var arr = [3,1,5,2,4];
arr.sort(function(a,b) {
return a-b;
});
console.log(arr); //輸出 [1, 2, 3, 4, 5]

查找是另一個常見的問題,可以使用 indexOf 或 find 函數來實現。如果需要查找符合條件的所有元素,可以使用 filter 函數。例如:

var arr = ['apple', 'banana', 'orange', 'pear'];
var index = arr.indexOf('banana');
console.log(index); //輸出 1
var fruit = arr.find(function(item) {
return item.length >5;
});
console.log(fruit); //輸出 'orange'
var fruits = arr.filter(function(item) {
return item.length >5;
});
console.log(fruits); //輸出 ['banana', 'orange']

去重也是常見的問題,可以使用循環或 set 數據結構來實現。例如:

var arr = [1,2,2,3,3,3,4,4,4,4];
var result = [];
for (var i = 0; i< arr.length; i++) {
if (result.indexOf(arr[i]) === -1) {
result.push(arr[i]);
}
}
console.log(result); //輸出 [1, 2, 3, 4]
var arr2 = [1,2,2,3,3,3,4,4,4,4];
var set = new Set(arr2);
var result2 = Array.from(set);
console.log(result2); //輸出 [1, 2, 3, 4]

除此之外,JavaScript 數組還有很多其他的算法問題,例如最大值、最小值、求和、平均值等等。這些問題通常都可以使用 reduce 函數來實現。

var arr = [5,3,2,1,4];
var max = arr.reduce(function(pre, cur) {
return pre >cur ? pre : cur;
});
console.log(max); //輸出 5
var min = arr.reduce(function(pre, cur) {
return pre< cur ? pre : cur;
});
console.log(min); //輸出 1
var sum = arr.reduce(function(pre, cur) {
return pre + cur;
});
console.log(sum); //輸出 15
var avg = sum / arr.length;
console.log(avg); //輸出 3

綜上所述,JavaScript 數組算法是非常重要的一部分,掌握常見的算法技能可以幫助我們更好地操作數組數據。