const arr = [2, 3, 5, 4, 8, 6, 9, 1, 7];
function bubbleSort(arr) {
for (let i = 0; i < arr.length - 2; i++) {
for (let j = 0; j < arr.length - i; j++) {
if (arr[j] > arr[j + 1]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
}
}
}
return arr
}
function selectionSort(arr) {
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
[arr[j], arr[i]] = [arr[i], arr[j]]
}
}
}
return arr
}
const quickSort = (arr, left = 0, right = arr.length - 1) => {
if (left >= right) {
return
}
let i = left;
let j = right;
const baseVal = arr[j]
while (i < j) {
while (i < j && arr[i] <= baseVal) {
i++
}
[arr[i], arr[j]] = [arr[j], arr[i]];
while (i < j && arr[j] >= baseVal) {
j--
}
[arr[i], arr[j]] = [arr[j], arr[i]];
}
arr[j] = baseVal
quickSort(arr, left, j - 1)
quickSort(arr, j + 1, right)
return arr
}
console.log(bubbleSort(arr))
console