diff --git a/Algorithms/sorting/JavaScript/bubbleSort.js b/Algorithms/sorting/JavaScript/bubbleSort.js new file mode 100644 index 0000000..3303665 --- /dev/null +++ b/Algorithms/sorting/JavaScript/bubbleSort.js @@ -0,0 +1,19 @@ +function swap(array, i, j) { + let temp = array[i]; + array[i] = array[j]; + array[j] = temp; +} + +function bubbleSort(array) { + let swapped; + do { + swapped = false; + for (var i = 0; i < array.length; i++) { + if (array[i] > array[i + 1]) { + swap(array, i, i + 1); + swapped = true; + } + } + } while (swapped); + return array; +} diff --git a/Algorithms/sorting/JavaScript/quickSort.js b/Algorithms/sorting/JavaScript/quickSort.js new file mode 100644 index 0000000..b133752 --- /dev/null +++ b/Algorithms/sorting/JavaScript/quickSort.js @@ -0,0 +1,19 @@ +function quicksortBasic(array) { + if (array.length < 2) { + return array; + } + + let pivot = array[0]; + let lesser = []; + let greater = []; + + for (var i = 1; i < array.length; i++) { + if (array[i] < pivot) { + lesser.push(array[i]); + } else { + greater.push(array[i]); + } + } + + return quicksortBasic(lesser).concat(pivot, quicksortBasic(greater)); +}