选择排序算法

// 选择排序算法
// 时间复杂度为 O(n*n)
    function selectSort(arr) {
      var min = null,
        temp, index = 1;
      for (var i = 0; i < arr.length - 1; i++) {
        min = arr[i];
        for (var j = i + 1; j < arr.length; j++) {
          if (arr[j] < min) {
            min = arr[j];
            index = j;
          }
        }
        temp = arr[i];
        arr[i] = min;
        arr[index] = temp;
      }
      return arr;
    }

    function getRandomNumbers(min, max, count) {
      count = count || 10;
      min = min || 0;
      max = max || 10;
      var res = [];
      var temp;
      var cap = max - min;
      for (var i = 0; i < count; i++) {
        temp = Number((Math.random() * cap + min).toFixed(2));
        res.push(temp)
      }
      return res;
    }
    console.time()
    console.log(selectSort(getRandomNumbers(1, 30, 10)))
    console.timeEnd()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容