js冒泡排序优化排序次数
2017-04-23 19:56
232 查看
//循环控制趟数 var s = 0; var s1 = 0; //为什么 isSort = true,不能写在循环外面 //因为 交换位置 isSort = false. isSort的值永远是false 。我们要检测的是某一趟是否交换位置 for (var i = 0; i < array.length - 1; i++) { var isSort = true; //假设排序ok //控制两两比较的次数 1--6 2--5 4 3 2 1 for (var j = 0; j < array.length - 1 - i; j++) { //两两比较 从小到大排序 //如果交换位置,说明没有排序好,如果不交换位置,说明排序好 if (array[j] > array[j + 1]) { isSort = false; //没有排序好呢 //交换位置 var tmp = array[j]; array[j] = array[j + 1]; array[j + 1] = tmp; } s++; //记录内循环的次数 } s1++; //记录外循环的次数 if(isSort) { //如果排序好了 break; } } console.log("内循环的次数" + s); console.log("外循环的次数" + s1); console.log(array);
相关文章推荐
- js 排序动画模拟 冒泡排序
- 如何优化js代码(4)――减少作用域链上的查找次数
- JS实现冒泡排序,插入排序和快速排序并排序输出
- 冒泡排序、选择排序、插入排序的js实现
- 前端性能优化--合并压缩js,减少http请求次数
- js 优化次数过多的循环 考虑到性能问题
- 排序(1)——冒泡排序及其优化
- java版排序算法简介及冒泡排序以及优化,选择排序,直接插入排序,希尔排序,堆排序,快速排序及其优化前言 2 分类 2 稳定性 3 时间复杂度 4 Java实现版本 5 1、冒泡排序 6 2、选择排序
- 看数据结构写代码(2) 选择排序 和 冒泡排序 算法优化
- C语言:使用冒泡排序,排序多个字符串(优化)。
- 详解冒泡排序和对其优化的Shaker 排序
- 内部排序之二:冒泡排序和选择排序(改进优化,附完整源码)
- 【数据结构与算法】内部排序之二:冒泡排序和选择排序(改进优化,附完整源码)
- js 排序 冒泡排序,选择排序,插入排序
- 算法——排序之冒泡排序优化
- 编写一个js函数求一个字符串数组按字符串中各字母出现次数多少的重新排序
- js冒泡排序,快速排序,插入排序
- 【数据结构与算法】内部排序之二:冒泡排序和选择排序(改进优化,附完整源码)
- 选择排序和冒泡排序区别以及冒泡排序优化
- 排序----冒泡排序的优化_选择排序_插入排序