1.冒泡排序算法

核心是二次循环:
1.外层循环次数为数据总长度-1次
2.内层循环次数为数据总长度-1次-当前第几轮循环

一.javascript 版实现

function bubbleSort(arr){
    var L = arr.length;
    for(var i=1; i<L; i++) {
        console.log("==========外层循环:" + i);
        for(var j=0; j<L-i; j++){      
            console.log("内层循环:" + j);
            if (arr[j] > arr[j+1]) {                          // 相邻元素两两对比
                [ arr[j+1], arr[j] ] = [ arr[j], arr[j+1] ]    // 元素交换
            }
        }
    }
    return arr
}

// 测试例子
 arr1 = [100, 23, 1, 40, 8]
console.log(bubbleSort(arr1));
测试结果

一.python 版实现

def bubble_sort(arr):
    L = len(arr)
    for i in range(1, L):
        for j in range(L-i):
            if arr[j] > arr[j+1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]

    return arr
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容