js常考之数组选择排序
选择排序:
两个for循环嵌套,外循环记录每次循环开始的位置,内循环查找本次循环内的最小值;
实质是每循环一次将查到的最小值放在每次循环的最初开始的位置;
代码:
//选择排序 function arrSort3(arr){ var len= arr.length, minIndex,nu; for(var i = 0; i < len-1; i++){ minIndex = i;//记录每次循环的第一个数为该次循环的最小值索引 for(var j = i+1; j < len; j++){ if(arr[j]<arr[minIndex]){ minIndex = j;//找到每次循环到的最小值, } } nu = arr[i]; arr[i] = arr[minIndex];//将找到的最小值放在每次循环的最开始的地方; arr[minIndex] = nu; } console.log(arr); }