美文网首页
js实现 冒泡排序

js实现 冒泡排序

作者: Kitty__Cat | 来源:发表于2018-03-09 13:45 被阅读0次

原理:
两个相邻的数,进行比较,如果前面的数比后面的数大(或小),则交换位置,直到最大的数(或最小的数)沉底!!【从小到大 或 从大到小 都能排序!】

// 用【冒泡排序】实现数组 从小到大 排序
var arr = [5, 4, 3, 2, 1];

// 过程分析:
4 5 3 2 1
4 3 5 2 1
4 3 2 5 1
4 3 2 1 5
---------
3 4 2 1 5
3 2 4 1 5
3 2 1 4 5
---------
2 3 1 4 5
2 1 3 4 5
---------
1 2 3 4 5

外层循环 i(轮数) 内层循环 j(次数)
        0                 4
        1                 3
        2                 2
        3                 1
从而得出:j = arr.length - 1 - i
// 用【冒泡排序】实现数组 从小到大 排序
var arr = [20, 12, 3, 40, 15, 6];

// 过程分析:
12 20 3 40 15 6
12 3 20 40 15 6
12 3 20 40 15 6
12 3 20 15 40 6
12 3 20 15 6 40
---------------
3 12 20 15 6 40
3 12 20 15 6 40
3 12 15 20 6 40
3 12 15 6 20 40
---------------
3 12 15 6 20 40
3 12 15 6 20 40
3 12 6 15 20 40
---------------
3 12 6 15 20 40
3 6 12 15 20 40
---------------
3 6 12 15 20 40

每一轮筛选,都会得到【剩余数中的那个最大数】!

外层循环 i(轮数) 内层循环 j(次数)
        0                 5
        1                 4
        2                 3
        3                 2
        4                 1
从而得出:j = arr.length - 1 - i

代码实现:

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 temp = arr[j];
            arr[j] = arr[j+1];
            arr[j+1] = temp;
        }
    }
}

要实现 从大到小 排序,只需要将if判断里的>号,改成<号即可。

相关文章

  • JS实现冒泡排序

    当i=1的时候,里面的循环再次完整执行,由于最大的数已经在最后了,没有必要去比较数组的最后两项,这也是j < le...

  • js实现 冒泡排序

    原理:两个相邻的数,进行比较,如果前面的数比后面的数大(或小),则交换位置,直到最大的数(或最小的数)沉底!!【从...

  • JS实现冒泡排序

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

  • 用JavaScript实现常见的排序算法

    前戏 复习了一些比较常见的排序算法,用JS实现,带一些实现思路。 无图,无脑贴代码。。 比较排序 冒泡排序 比较相...

  • 看图说话排序算法之冒泡排序

    排序算法的种类非常多,这里总结冒泡排序和对冒泡排序的改进---快速排序的循环实现和递归实现。 一丶冒泡排序 假设待...

  • 七大排序算法之冒泡排序

    七大排序算法之冒泡排序 @(算法笔记)[排序算法, 冒泡排序, C++实现] 冒泡排序介绍 冒泡排序是七大排序算法...

  • python-冒泡排序-选择排序-插入排序-快速排序-二分查找

    1、冒泡排序 - 实现列表[5, 3, 4, 7, 2]排序: 冒泡排序运行结果: 2、选择排序 - 实现列表[1...

  • 简单排序

    1、选择排序 实现 2、冒泡排序 实现 3、插入排序 实现

  • Java 实现冒泡排序

    本文介绍冒泡排序原理及 Java 语言实现。 目录 冒泡排序原理 代码实现 冒泡排序原理 比较相邻的元素,升序时如...

网友评论

      本文标题:js实现 冒泡排序

      本文链接:https://www.haomeiwen.com/subject/barsfftx.html