js算法之冒泡排序

冒泡排序

简介
数组长度为N, 
第一次循环将0到N-1位置上最大的数放在N-1的位置, 
第二次循环将0-N-2位置上最大的数放在N-2的位置,
...
代码
  const maopao = function(arr) {
    if (arr.length < 2) {
      return false;
    }
    let indexEnd = arr.length - 1;
    for (indexEnd; indexEnd > 0; indexEnd--) {
      for (let i = 0; i < indexEnd; i++) {
        if (arr[i] > arr[i + 1]) {
          const tmp = arr[i + 1];
          arr[i + 1] = arr[i];
          arr[i] = tmp;
        }
      }
    }
    return arr;
  };
  const newArr = maopao([3, 5, 7, 1, 4, 2]);
  console.log(newArr);
时间复杂度
O(N^2)
阅读 211

推荐阅读