欢迎光临
我们一直在努力

JavaScript | 冒泡排序原理及操作

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。

这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

算法原理

  1. 比较相邻的元素。如果第一个比第二个大就交换他们两个 
  2. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。做完第一次后,最后的元素会是最大的数。 
  3. 针对所有的元素重复以上的步骤,除了最后一个。 
  4. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 

通过JavaScript实现冒泡排序:

var arr = [10, 214, 53, 2, 34, 3, 4, 1, 66];

function buddleSort(arr) {
var arrLen = arr.length;
//外层循环,用于判断循环次数
for (var j = 0; j < arrLen - 1; j++) {
    //内层循环,用于判断每次循环需要比对元素次数
    for (var i = 0; i < arrLen - j - 1; i++) {
    //如果前面的值大于后面的,则对调位置
    if (arr[i] > arr[i + 1]) {
        var temporary = arr[i];
        arr[i] = arr[i + 1];
        arr[i + 1] = temporary;
    }
    }
}
}
buddleSort(arr);
console.log(arr);
赞(2) 打赏
未经允许不得转载:散人研 » JavaScript | 冒泡排序原理及操作
分享到: 更多 (0)

评论 抢沙发

8 + 6 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏