選擇排序:打擂台法
規律:選出乙個位置,和後面所有的數,進行比較,如果,符合條件就直接交換位置。
特點:每一次都找出乙個較小的數,放在正確的位置。
第一輪:
9, 8, 7, 6, 5, 4
8, 9, 7, 6, 5, 4
7, 9, 8, 6, 5, 4
6, 9, 8, 7, 5, 4
5, 9, 8, 7, 6, 4
4, 9, 8, 7, 6, 5
第二輪:
9, 8, 7, 6, 5
8, 9, 7, 6, 5
7, 9, 8, 6, 5
6, 9, 8, 7, 5
5, 9, 8, 7, 6
第三輪:
9, 8, 7, 6
8, 9, 7, 6
7, 9, 8, 6
6, 9, 8, 7
第四輪:
9, 8, 7
8, 9, 7
7, 9, 8
第五輪:
9, 8
8, 9
var arr = [9, 8, 7, 6, 5, 4];
for(var i = 0; i < arr.length - 1; i++)}}
console.log(arr);
快速排序/分治法先找乙個基準數
function num(arr)
// 找到基數
var index = parseint(arr / 2);
// 把基數拿出來
var aba = arr.splice(index,1);
// 設定左右兩個空值
var left = ;
var right = ;
for(var a = 0 ; a < arr.length;a++)
// 如果大於則給右邊盒子插入
else
}// 返回值:給左邊加基數和右邊的陣列
return num(left).concat(aba,num(right))
}var ttt = num(arr);
console.log(ttt);
array.indexof()
格式:陣列.indexof(item, start);
【注】start不傳入,預設從0開始查詢。
功能:在陣列中查詢item,從start開始第一次出現的下標。
返回值:如果能查詢的到,返回查詢到的下標,否則,返回-1
arr.foreach(function(item, index, array))
array.map()
功能:對映
對映關係:寫在函式的return部分。
返回值:生成乙個對映關係生成的新陣列
讓上述陣列中每乙個元素,增加30%
var newarr = arr.map(function(item, index, array))
console.log(newarr);
console.log(arr);
array.filter()
功能:過濾
過濾條件:return後面的表示式
var newarr = arr.filter(function(item, index, array))
console.log(newarr);
console.log(arr);
array.every()
功能:判斷陣列中的每乙個元素,是否都符合條件
返回值:如果是,返回true, 否則false
判斷條件:return後面的表示式
【注】短路操作
var res = arr.every(function(item, index, array))
console.log(res);
console.log(arr);
array.some()
功能:判斷陣列中的有乙個元素,是否符合條件
返回值:如果是,返回true, 否則false
判斷條件:return後面的表示式
【注】短路操作
var res = arr.some(function(item, index, array))
console.log(res);
console.log(arr);
ES5新增方法
語法 arr.foreach function value,index,array value 陣列當前項的值 index 陣列當前的索引 array 陣列物件本身 var arr 1,2,3 arr.foreach function value,index,array 輸出 每個陣列元素1 每個陣...
ES5新增方法
迭代 遍歷 方法 foreach0 map0 filter some0 every0 array.some funct ion currentvalue,index,arr some0 方法用於檢測陣列中的元素是否滿足指定條件.通俗點查詢陣列中是否有滿足條件的元素 注意它返回值是布林值,如果查詢到這...
ES5陣列的方法
map 對映 語法 陣列.map function item,index,arr item 陣列中每乙個資料 index 索引 arr 原始陣列 foreach 迴圈 陣列.foreach function item,index,arr filter 過濾器 陣列.filter function i...