/**
* 原理:每个元素与下一个元素对比,对比n次,每次取出最小的,放在最前面
* 时间复杂度:n + (n-1) + (n-2) + ... + 1 = O(n * n)
* @param {原数组} arr
* @returns 排序后的数组
*/
function bubble (arr) {
if (!Array.isArray(arr)) {
return []
}
for (let i = arr.length - 1; i > 0; i--) {
for (let j = 0; j < i; j++) {
if (arr[j] > arr[j + 1]) {
let temp = arr[j]
arr[j] = arr[j + 1]
arr[j + 1] = temp
}
}
}
return arr
}
相关文章
- 02-02113.输入10个国家的名字,按由小到大排序
- 02-02【LeetCode】451-根据字符出现频率排序
- 02-02451. 根据字符出现频率排序(每日随记)
- 02-02451. 根据字符出现频率排序
- 02-02LeetCode 451. 根据字符出现频率排序
- 02-02LeetCode 164. Maximum Gap (排序)
- 02-02【CSP模拟赛】益智游戏(最短路&拓扑排序)
- 02-02线性时间的排序算法--桶排序(以leetcode164. Maximum Gap为例讲解)
- 02-02【leetcode 桶排序】Maximum Gap
- 02-02odoo10 many2one字段下拉更多选项时自定义排序方法