冒泡排序的两种策略:

<script>
// 第一种思路:
// 一个数组中的数据,拿第一个和剩下的依次进行对比,数值小的赋值给第一个,一轮比较过后,则数值小的放在最前边。
// 第二轮比较,则最前边的不需要比较(因为最小),拿第二个和剩下的进行比较,数值小的赋值给第二个。

var arr = [12,15,2,47,98,76,23,13,0];
function bubbleSort(arr){
   var num = 0;
   for(var i=0;i<arr.length-1;i++){
        for(var j=i+1;j<arr.length;j++){
             num++;
             if(arr[i]>arr[j]){ 
                   var tempSum = arr[i];
                   arr[i] = arr[j];
                   arr[j] = tempSum;
             }
         }
     }
      console.log('bubbleSort的循环次数是'+num);
      return arr;
}
console.log(bubbleSort(arr));
// 第二种思路:
// 一个数组中的数据,拿第一个和剩下的依次进行对比,数值大的赋值给第二个,一轮比较过后,则数值大的放在最后边。
// 第二轮比较,拿第一个和(n-1)个进行比较,数值大的赋值给第二个,最后是上轮数值最大的那个,不需对比。

var arr2 = [12,15,2,47,98,76,23,13,0];
function bubbleSort2(arr){
      var num2 = 0;
      for(var i=0;i<arr.length-1;i++){
            for(var j=0;j<arr.length-1-i;j++){
                  num2++
                  if(arr[i]>arr[j]){
                          var tempSum = arr[i];
                          arr[i] = arr[j];
                          arr[j] = tempSum;
                   }
              }
       }
       console.log('bubbleSort2的循环次数是'+num2);
        return arr;
}
console.log(bubbleSort2(arr));
</script>

最新文章

  1. 记一次Redis被攻击的事件
  2. 卷积神经网络(CNN)学习算法之----基于LeNet网络的中文验证码识别
  3. nginx-1.8.0 rpm包制作
  4. 转:Google论文之二----Google文件系统(GFS)翻译学习
  5. 解决百度Ueditor编辑器表格不显示边框问题
  6. 认识ptrace函数
  7. buildroot 重新编译 package
  8. Xcode 设置文件生成时的模板
  9. Python的列表
  10. ElasticSearch之 控制相关度原理讲解
  11. 闪回工具flashback
  12. CF666E Forensic Examination [后缀自动机,线段树合并]
  13. fiddle使用小结
  14. mysql 各种关系代数的使用
  15. 利用padding-top/padding-bottom百分比,进行占位和高度自适应
  16. Flask视图函数与普通函数的区别,响应对象Response
  17. 总结day23 ---- 网络编程,以及计算机基础概念
  18. Mariadb相关
  19. 并发系列4-大白话聊聊Java并发面试问题之公平锁与非公平锁是啥?【石杉的架构笔记】
  20. Ant入门之引用外部jar文件

热门文章

  1. Memcached 之内存管理与删除机制
  2. 微信小程序中的iPhone X适配问题
  3. 在Unity中json文件的解析方式
  4. [POJ2404]Jogging Trails
  5. 2018 noip 考前临死挣扎
  6. 格式化LInux后开机进入grub怎么办
  7. [bzoj2049][Sdoi2008]Cave 洞穴勘测_LCT
  8. POJ 2373
  9. Ruby 写文件
  10. [Javascript] Deep Search nested tag element in DOM tree