麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

javascript數組排序匯總

2024-05-06 16:22:49
字體:
來源:轉載
供稿:網友

本文給大家匯總了一下javascript的數組排序算法,包括冒泡排序、快速排序、插入排序、希爾排序,希望對大家熟悉javascript數組排序能夠有所幫助。

javascript數組排序匯總

  1. //排序算法 
  2. window.onload = function(){ 
  3. var array = [0,1,2,44,4, 
  4. 324,5,65,6,6, 
  5. 34,4,5,6,2, 
  6. 43,5,6,62,43, 
  7. 5,1,4,51,56, 
  8. 76,7,7,2,1, 
  9. 45,4,6,7,8]; 
  10. //var array = [4,2,5,1,0,3]; 
  11. console.log('原始數組'); 
  12. console.log(array); 
  13. array = sorting.shellSort(array); 
  14. // alert(array); 
  15. console.log('排序后的數組'
  16. console.log(array); 
  17.  
  18. var sorting = { 
  19. //利用sort方法進行排序 
  20. systemSort: function(arr){ 
  21. return arr.sort(function(a,b){ 
  22. return a-b; 
  23. }); 
  24. }, 
  25.  
  26. //冒泡排序 
  27. bubbleSort: function(arr){ 
  28. var len=arr.length, tmp; 
  29. for(var i=0;i<len-1;i++){ 
  30. for(var j=0;j<len-1-i;j++){ 
  31. if(arr[j]>arr[j+1]){ 
  32. tmp = arr[j]; 
  33. arr[j] = arr[j+1]; 
  34. arr[j+1] = tmp; 
  35. return arr; 
  36. }, 
  37.  
  38. //快速排序 
  39. quickSort: function(arr){ 
  40. var low=0, high=arr.length-1; 
  41. sort(low,high); 
  42. function sort(low, high){ 
  43. if(low<high){ 
  44. var mid = (function(low, high){ 
  45. var tmp = arr[low]; 
  46. while(low<high){ 
  47. while(low<high&&arr[high]>=tmp){ 
  48. high--; 
  49. arr[low] = arr[high]; 
  50. while(low<high&&arr[low]<=tmp){ 
  51. low++; 
  52. arr[high] = arr[low]; 
  53. arr[low] = tmp; 
  54. return low; 
  55. })(low, high); 
  56. sort(low, mid-1); 
  57. sort(mid+1,high); 
  58. return arr; 
  59. }, 
  60.  
  61. //插入排序 
  62. insertSort: function(arr){ 
  63. var len = arr.length; 
  64. for(var i=1;i<len;i++){ 
  65. var tmp = arr[i]; 
  66. for(var j=i-1;j>=0;j--){ 
  67. if(tmp<arr[j]){ 
  68. arr[j+1] = arr[j]; 
  69. }else
  70. arr[j+1] = tmp; 
  71. break
  72. return arr; 
  73. }, 
  74.  
  75. //希爾排序 
  76. shellSort: function(arr){ 
  77. var h = 1; 
  78. while(h<=arr.length/3){ 
  79. h = h*3+1; //O(n^(3/2))by Knuth,1973 
  80. for( ;h>=1;h=Math.floor(h/3)){ 
  81. for(var k=0;k<h;k++){ 
  82. for(var i=h+k;i<arr.length;i+=h){ 
  83. for(var j=i;j>=h&&arr[j]<arr[j-h];j-=h){ 
  84. var tmp = arr[j]; 
  85. arr[j] = arr[j-h]; 
  86. arr[j-h] = tmp; 
  87. return arr; 


以上所述就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 国产一级毛片在线看 | 成人免费毛片在线观看 | 精品小视频 | 亚洲欧美国产高清va在线播放 | v片在线看 | 成人一区三区 | 欧美高清一级片 | 成人av一区二区免费播放 | 蜜桃视频在线免费播放 | 国产高清成人久久 | 羞羞的视频免费观看 | 成人男男视频拍拍拍在线观看 | 在线播放污 | 在线视频 欧美日韩 | 欧美一级网 | 成人羞羞在线观看网站 | 久久久久.com| 日本在线国产 | 毛片免费观看日本中文 | 一本一道久久久a久久久精品91 | 欧美精品成人一区二区在线观看 | 精品一区二区免费 | 欧美aⅴ视频 | omofun 动漫在线观看 | 福利在线免费 | 亚洲综合一区在线观看 | 国产精品一二区 | 国产女做a爱免费视频 | 色综合久久久久久久久久久 | 亚州精品天堂中文字幕 | 精品爱爱 | 精品国产一区二区亚洲人成毛片 | 免费h片 | 1024亚洲天堂 | 亚洲第九十九页 | 亚洲视屏 | 国产精品区一区二区三区 | 毛片免费在线播放 | 亚洲天堂岛国片 | 欧美亚洲一级 | 精国产品一区二区三区 |