diff --git a/03_recursion/01_countdown.js b/03_recursion/javascript/01_countdown.js similarity index 100% rename from 03_recursion/01_countdown.js rename to 03_recursion/javascript/01_countdown.js diff --git a/03_recursion/02_greet.js b/03_recursion/javascript/02_greet.js similarity index 100% rename from 03_recursion/02_greet.js rename to 03_recursion/javascript/02_greet.js diff --git a/03_recursion/03_factorial.js b/03_recursion/javascript/03_factorial.js similarity index 100% rename from 03_recursion/03_factorial.js rename to 03_recursion/javascript/03_factorial.js diff --git a/04_quicksort/01_loop_sum.js b/04_quicksort/01_loop_sum.js deleted file mode 100644 index d2f70fd..0000000 --- a/04_quicksort/01_loop_sum.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -function sum(arr) { - let total = 0; - for (let x = 0; x < arr.length; x++) { - total += arr[x]; - } - return total; -} - -console.log(sum([1, 2, 3, 4])) // 10 diff --git a/04_quicksort/02_recursive_sum.js b/04_quicksort/02_recursive_sum.js deleted file mode 100644 index b0712f2..0000000 --- a/04_quicksort/02_recursive_sum.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -function sum(list) { - if (list.length === 0) { - return 0; - } - return list[0] + sum(list.slice(1)); -} - -console.log(sum([1, 2, 3, 4])) // 10 diff --git a/04_quicksort/03_recursive_count.js b/04_quicksort/03_recursive_count.js deleted file mode 100644 index 139acfc..0000000 --- a/04_quicksort/03_recursive_count.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -function count(list) { - if (list.length === 0) { - return 0; - } - return 1 + count(list.slice(1)); -} - -console.log(count([0, 1, 2, 3, 4, 5])); // 6 diff --git a/04_quicksort/04_recursive_max.js b/04_quicksort/04_recursive_max.js deleted file mode 100644 index fe457e9..0000000 --- a/04_quicksort/04_recursive_max.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -function max(list) { - if (list.length === 2) { - return list[0] > list[1] ? list[0] : list[1]; - } - let sub_max = max(list.slice(1)); - return list[0] > sub_max ? list[0] : sub_max; -} - -console.log(max([1, 5, 10, 25, 16, 1])); // 25 diff --git a/04_quicksort/05_quicksort.js b/04_quicksort/05_quicksort.js deleted file mode 100644 index c3c61ae..0000000 --- a/04_quicksort/05_quicksort.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; - -function quicksort(array) { - if (array.length < 2) { - // base case, arrays with 0 or 1 element are already "sorted" - return array; - } else { - // recursive case - let pivot = array[0]; - // sub-array of all the elements less than the pivot - let less = array.slice(1).filter(function(el) { return el <= pivot; }); - // sub-array of all the elements greater than the pivot - let greater = array.slice(1).filter(function(el) { return el > pivot; }); - return quicksort(less).concat([pivot], quicksort(greater)); - } -} - -console.log(quicksort([10, 5, 2, 3])); // [2, 3, 5, 10] diff --git a/05_hash_tables/01_price_of_groceries.js b/05_hash_tables/01_price_of_groceries.js deleted file mode 100644 index a95d3d2..0000000 --- a/05_hash_tables/01_price_of_groceries.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -const book = {}; -// an apple costs 67 cents -book['apple'] = 0.67; -// milk costs $1.49 -book['milk'] = 1.49; -book['avocado'] = 1.49; - -console.log(book); // { apple: 0.67, milk: 1.49, avocado: 1.49 } diff --git a/05_hash_tables/02_check_voter.js b/05_hash_tables/02_check_voter.js deleted file mode 100644 index 288eba6..0000000 --- a/05_hash_tables/02_check_voter.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; - -const voted = {}; -function check_voter(name) { - if (voted[name]) { - console.log('kick them out!'); - } else { - voted[name] = true; - console.log('let them vote!'); - } -} - - -check_voter("tom"); // let them vote! -check_voter("mike"); // let them vote! -check_voter("mike"); // kick them out!