博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js冒泡排序
阅读量:7104 次
发布时间:2019-06-28

本文共 772 字,大约阅读时间需要 2 分钟。

/** * 冒泡排序 */function bubble(arr){  let length = arr.length;  for(let i = 0; i < length-1; i++ ){    let flag = false;    for(let j = 0;j < length-i-1; j++ ){      if(arr[j] > arr[j+1]){        [arr[j+1],arr[j]] = [arr[j],arr[j+1]];        flag = true;      }    }    if(!flag){      return arr;    }    console.log(`第${i+1}次`,arr)  }  return arr;}let arr = [1,3,2,55,21,14,23,4];let res = bubble(arr);console.log("最终结果:",res);
第1次 [ 1, 2, 3, 21, 14, 23, 4, 55 ]第2次 [ 1, 2, 3, 14, 21, 4, 23, 55 ]第3次 [ 1, 2, 3, 14, 4, 21, 23, 55 ]第4次 [ 1, 2, 3, 4, 14, 21, 23, 55 ]最终结果: [ 1, 2, 3, 4, 14, 21, 23, 55 ]

思路: 

  • 将序列当中的左右元素,依次比较,保证右边的元素始终大于左边的元素;( 第一轮结束后,序列最后一个元素一定是当前序列的最大值;)
  • 对序列当中剩下的n-1个元素再次执行步骤1。
  • 对于长度为n的序列,一共需要执行n-1轮比较

转载于:https://www.cnblogs.com/xiaosongJiang/p/10905797.html

你可能感兴趣的文章
字符串基本操作
查看>>
linux之间文件共享的方式
查看>>
网络基础 - HTTP与HTTPS的区别(转)
查看>>
多线程
查看>>
XmlTextReader实例(加载表数据)
查看>>
Use of undefined constant xxx- assumed 'xxx'
查看>>
端口号
查看>>
正则表达式
查看>>
vue自定义全局公共函数
查看>>
LeetCode 299 Bulls and Cows
查看>>
微信公众平台开发 - 动手篇。使用weinxinFundation开始一个微信公众平台的开发
查看>>
Oracle中正则表达式的使用
查看>>
Exp3 免杀原理与实践20154302薛师凡
查看>>
stack,heap的区别
查看>>
PAT 1067 Sort with Swap[难]
查看>>
指针,为何不能在全局作用域内申请内存?
查看>>
Xilinx器件原语
查看>>
jquery的使用 超级快速入门 熟练使用
查看>>
如何在Windows Server 2008 R2下搭建FTP服务
查看>>
人才市场的IT职位分析
查看>>