如何利用JavaScript實現排序算法淺析
冒泡排序
冒泡排序就是重復從序列右邊開始比較相鄰兩個數字的大小,再根據結果交換兩個數字的位置。
JavaScript代碼實現:
代碼簡介:聲明一個數組變量,通過while給數組變量賦值,當輸入“#”時停止輸入,然後遍歷相鄰的兩個數,讓相鄰的兩個數升序排列,遍歷n-1次實現排序;
var a = Array(); flag=true; var i = 0; var j = 0; var temp = 0; while(flag){ var b = prompt("請輸入第i個數字:"); if(b=="#"){ flag=false; }else{ a[i] = b; } i++; } s = a.length; for(j=0;j<s;j++){ console.log(a[j]); } for(j=1;j<s;j++){ for(i=0;i<s-j;i++){ if(a[i]>a[i+1]){ temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; } } } for(j=0;j<s;j++){ console.log("升序:",a[j]); }
輸入3,4,2,8,6。輸出結果如下:
選擇排序
選擇排序就是重復從待排序的數據中尋找最小值,將其與序列最左邊的數字進行交換
JavaScript代碼實現:
var a = Array(); flag=true; var i = 0; var j = 0; var temp = 0; while(flag){ var b = prompt("請輸入第i個數字:"); if(b=="#"){ flag=false; }else{ a[i] = b; } i++; } s = a.length; for(j=0;j<s;j++){ console.log("數組:",a[j]); } for(i=0;i<s;i++){ for(j=0;j<s;j++){ if(a[i]>a[j]){ temp = a[j]; a[j] = a[i]; a[i] = temp; } } } for(j=s-1;j>=0;j--){ console.log("選擇排序:",a[j]); }
插入排序
插入排序算法:通過構建有序數組元素的存儲,對未排序的數組元素,在已排序的數組中從最後一個元素向第一個元素遍歷,找到相應位置並插入。
js代碼實現:
var flag = true; var a = new Array(); var i=0; while(flag){ var s = prompt('請輸入一個數:'); if(s=='#'){ flag=false; }else{ a[i] = s; } i++; } console.log(a); for(var i=1;i<a.length;i++){ for(var j = i;j>0;j--){ if(a[j-1]>a[j]){ var temp = a[j-1]; a[j-1] = a[j]; a[j] = temp; } } } for(var i=0;i<a.length;i++){ console.log(a[i]); }
輸入5,3,7,4,8,1,6。輸出結果如下:
總結
到此這篇關於如何利用JavaScript實現排序算法的文章就介紹到這瞭,更多相關js實現排序算法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!