1.氣泡排序
思路:相鄰兩個數進行比較,如果第乙個比第二個大則交換他們的位置。
let arr=[1,9,6,5,4,2,3];for(var i=0;i)}}
console.log(arr)}
2.選擇排序
思路:首先在原陣列中查詢最小值,將最小值放在最前面,接著在剩下的元素中查詢,放在最小值的後面,以此類推。
let arr=[144,15,8,12,10,11]for(var i=0;i)
}if(i!==minindex)
} console.log(arr)
3.插入排序
1)第乙個數已排序
2)將待插項第二個數和第乙個數比較,插入適合的位置
3)接著將待插項第三個數和前兩個數進行比較,後面的將待插項元素依次和前面進行比較,找到對應的位置並插入
let arr=[18,4,8,9,10,11,]let temp;
for(var i=1;i//
從第二個數開始
temp=arr[i]; //
臨時儲存
//從前往後查詢插入的位置
for(var j=i;j>0&&arr[j-1]>temp;j--)
arr[j]=temp
}console.log(arr)
JS排序演算法
function insertsort arr endif status new date st ms return arr function shellsort arr while increment 1 status new date st ms return arr function shel...
排序演算法(JS)
自己整理一下資料結構的排序演算法,用js寫了一下,測試正確。插入排序 var table 32,26,87,72,26,17 for var i 0 i 0 temp0 alert i table 快速排序 快速排序是找出乙個元素 理論上可以隨便找乙個 作為基準 pivot 然後對陣列進行分割槽操作...
js排序演算法
常見內部排序演算法有 插入排序 希爾排序 選擇排序 氣泡排序 歸併排序 快速排序 堆排序 技術排序等 從第乙個元素開始,該元素被當成已排序 取出下乙個元素,在已排序的元素序列中從後向前掃瞄 如果該元素大於新元素,將該元素移到下一位置 重複3步驟,直到找到已排序的元素小於或者等於新元素,將新元素插入到...