用流程图详细解释JavaScript冒泡排序原理和流程

Agnes ·
更新时间:2024-09-21
· 703 次阅读

冒泡排序很简单,两重循环即可。今天有伙伴问起原理,用一个图详细解释其冒泡原理。

核心原理是:把每一个元素和数组中的每一个元素进行位置比较,如果满足移动的条件,相比较的两个元素交换位置(冒泡)

先撸代码,代码简短:

/** * 数组的冒泡排序 * @param {array} arr * @author xinxiang84@126.com */ function bubbleSort(arr) { for( let i=0; i<arr.length; i++ ) { for(let j=0; j<arr.length; j++) { // 比较大小,交换顺序,也就是冒泡 let temp = arr[i]; if(arr[i] <= arr[j]){ arr[i] = arr[j]; arr[j] = temp; } } } return arr; } var originalArr2 = [12,9,16,7]; let newArr2 = bubbleSort([...originalArr2]); console.log(`bubbleSort end, newArr2 = ${JSON.stringify(newArr2)}`);

上个流程图,画的还算比较细,花费了两个来小时。。。

2020.05.03早上需要修改一个图,结果发现processon出BUG,只保存了一半,又花一个小时,虽然简单,但是画起来真不容易。

yangxinxiang84 原创文章 4获赞 0访问量 3624 关注 私信 展开阅读全文
作者:yangxinxiang84



流程图 排序 JavaScript

需要 登录 后方可回复, 如果你还没有账号请 注册新账号