首页 > 编程语言 > 详细

冒泡排序和选择排序

时间:2019-11-30 13:20:14      阅读:66      评论:0      收藏:0      [点我收藏+]

冒泡排序和选择排序都是数组排序。

数组排序方法:sort()排序,字符的排序,逐位比较        

        arr.sort(function(a,b){
            return a-b;
          });
          console.log(arr);

a-b从小到大数值排序,b-a从大到小排序。

冒泡排序:两两比较。

案例:arr[5,7,4,8,3]

  确定比较次数
  0-1 1-2 2-3 3-4   0~length-1-0
  0-1 1-2 2-3      0~length-1-1
  0-1 1-2        0~length-1-2
  0-1           0~length-1-3
  length-1

       排序

  for(var i=0;i<arr.length-1;i++){
  for(var j=0;j<arr.length-1-i;j++){
    if(arr[j] > arr[j+1]){
      var ls = arr[j];
      arr[j] = arr[j+1];
      arr[j+1] = ls;
    }
    }
     }

选择排序:将第一位和后面所有相比较,最小的交换,放在第一位。

案例:arr[5,7,4,8,3]

分析:

0-1 0-2 0-3 0-4 0-5 0~length-1
1-2 1-3 1-4 1-5 1~length-1
2-3 2-4 2-5 2~length-1
3-4 3-5 3~length-1
4-5 4~length-1
length-1

排序:

  for(var i=0;i<arr.length-1;i++){
    var min = arr[i];
    var minIndex = i;
    for(var j=i+1;j<arr.length;j++){
      if(min > arr[j]){
      min = arr[j];
      minIndex = j;
    }
    }
      arr[minIndex] = arr[i];
      arr[i] = min;
    }

冒泡排序和选择排序

原文:https://www.cnblogs.com/wss521/p/11961953.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!