冒泡排序

[亡魂溺海] 提交于 2020-03-03 00:45:23
冒泡排序:

英文Bubble Sort,是一种最基础的交换排序。之所以叫做冒泡排序,正是因为这种排序算法的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。

算法的原理如下:
   1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。 
   2.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。
   在这一点,最后的元素应该会是最大的数。 
   3.针对所有的元素重复以上的步骤,除了最后一个。 
   4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数
   字需要比较。
核心代码:
    1. 两个 for 循环
    2. 一个循环减一次
    3. 里层循环减外层循环变量
    4. 使用里层循环变量交换 
    
    var arr = [2, 5, 6, 8, 4, 3, 7, 9, 1]
    for (var j = 0; j < arr.length - 1; j++) {
        for (var i = 0; i < arr.length - 1 - j; i++) {
            if (arr[i] > arr[i + 1]) {
            var tmp = arr[i]
            arr[i] = arr[i + 1]
            arr[i + 1] = tmp
        	}
   		 }
    }
    console.log(arr)
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!