JS数组快速排序的三种方式

it2024-11-18  2

JS 数组快速排序的四种方式

使用双循环冒泡排序使用递归函数使用sort方法粗暴又简洁使用sort方法

使用双循环冒泡排序

var arr = [6,7,34,23,78,23,9,787,1] for(let i = 0; i < arr.length; i++) { for (let j=0; j < arr.length-i; j++) { if (arr[j] > arr[j+1]) { let num = arr[j] arr[j] = arr[j+1] arr[j+1] = num } } } console.log(arr) // [1, 6, 7, 9, 23, 23, 34, 78, 787]

使用递归函数

var arr = [6,7,34,23,78,23,9,787,1] var arr1 = [] resets(arr) function resets(arr) { if (arr.length>0) { var nuk = Math.max(...arr) arr1.unshift(nuk) arr.splice(arr.indexOf(nuk), 1) resets(arr) } else { return } } console.log(arr1) // [1, 6, 7, 9, 23, 23, 34, 78, 787]

使用sort方法粗暴又简洁

var arr = [6,7,34,23,78,23,9,787,1] arr.sort(function (a, b) { return a - b }) console.log(arr1) // [1, 6, 7, 9, 23, 23, 34, 78, 787]

使用sort方法

var arr = [2,4,6,8,23,1,4,0,3,7]; arr.sort((a, b) => { return a > b ? 1 : -1; }); console.log(arr) // [0, 1, 2, 3, 4, 4, 6, 7, 8, 23]
最新回复(0)