当前位置: 代码迷 >> Web前端 >> 结合排序
  详细解决方案

结合排序

热度:315   发布时间:2012-11-10 10:48:51.0
组合排序
  1. var combSort = function(array){
  2. ?var gap = array.length;
  3. ?do{
  4. ? gap = gap * 10 / 13
  5. ? if(gap === 9 || gap === 10)
  6. ?? ?gap = 11
  7. ? if(gap < 1){
  8. ?? ?gap = 1
  9. ? }
  10. ? var swapped = false;
  11. ? for(var i=0;i<array.length-gap;i++){
  12. ?? ?var j = i + gap
  13. ?? ?if(array[i]>array[j]){
  14. ?? ???var temp = array[i];
  15. ?? ???array[i] = array[j];
  16. ?? ???array[j] = temp;
  17. ?? ???test(array)
  18. ?? ???swapped = true
  19. ?? ?}
  20. ? }
  21. ? if(gap == 1 && !swapped){
  22. ?? ?break;
  23. ? }
  24. ?}while(1);
  25. }
  相关解决方案