侏儒排序

var gnomeSort =function(array){
  var len = array.length,i = 0;//把i想象为侏儒
  while(i < len){
    if (i == 0 || array[i-1] <= array[i])
    //array[i-1]与array[i]想象为花盆
    //侏儒站于array[i]的前面
      i++;//由于顺序正确,侏儒就转而站在array[i+1]的前面
    else{
      swap(array,i, --i);//如果顺序不正确,交换花盘,站在array[i-1]的前面
      test(array)
    }
  }
}
var swap = function(array,a,b){
  var tmp = array[a];
  array[a] = array[b]
  array[b] = tmp;
}
posted @ 2021-04-01 11:09  路要一步一步走  阅读(69)  评论(0编辑  收藏  举报