快速排序+冒泡排序

116 阅读1分钟

快速排序:

let arry = [ 1, 10, 10, 5, 5, 68, 8, 100, 95, 85, 100, 33 ]
function quickSort(arr) {
	if (arr.length < 2) return arr
	let pivot = arr[arr.length - 1]
	let left = arr.filter((item, index) => item <= pivot && index != arr.length - 1)
	let right = arr.filter((item) => item > pivot)
	return [ ...quickSort(left), pivot, ...quickSort(right) ]
}
console.log(quickSort(arry))

冒泡排序:

let arr = [ 1, 5, 10, 20, 6, 8, 9, 100, 4, 5, 0 ]

function arrSort(arry) {
  let arr = arry
  let n = null
	for (let i = 0; i < arr.length; i++) {
		for (let a = 0; a < arr.length - i; a++) {
			if (arr[a] > arr[a + 1]) {
				n = arr[a]
				arr[a] = arr[a + 1]
				arr[a + 1] = n
			}
		}
	}
  return arr 
}
console.log(arrSort(arr));