`

鸡尾酒排序

    博客分类:
  • js
J# 
阅读更多
  1. var cocktailSort= function(array) {
  2.  var top = array.length - 1, bottom = 0,flag = true,i, j;
  3.  while (flag) {
  4.   flag = false;
  5.   //从左到右到大,把最大的放到每次范围的最右边
  6.   for (i = bottom; i < top; i++) {
  7.     if (array[i] > array[i + 1]) {
  8.       swap(array, i, i + 1);
  9.       flag = true;
  10.     }
  11.   }
  12.   top--;
  13.   //从右到到左,把最小的放到每次范围的最小边
  14.   for (j = top; j > bottom; j--) {
  15.     if (array[j] < array[j - 1]) {
  16.       swap(array, j, j - 1);
  17.       flag = true;
  18.     }
  19.   }
  20.   bottom++;
  21.  }
  22. }

  23. var swap = function(array,a,b){
  24.  var tmp = array[a];
  25.  array[a] = array[b]
  26.  array[b] = tmp;
  27. }
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics