First install the JavaScript dependencies with npm install
Then run:
npm test
I'd recommend adding the eslint
plugin for your code editor. You can also run npm run lint
.
- Sorts:
- Bubble Sort (
src/bubble-sort.js
) - Merge Sort (
src/merge-sort.js
)
- Bubble Sort (
- Hash Table (
src/hash-table.js
) - Linked List (only with methods needed for HashTable) (
src/linked-list.js
) - Fibonacci (
src/fibonacci.js
) - Binary Search Tree (
src/binary-search-tree.js
) - Binary Search Tree (Left-leaning Red/Black) (to keep tree continually balanced) (
src/binary-search-tree-red-black.js
) - Shunting Yard (to convert infix notation to reverse-polish notation) (
src/shunting-yard.js
) - Reverse Polish Notation (calculate result from postfix notation) (
src/reverse-polish-notation.js
) - All permutations of an array (
src/permutation.js
)
What is Codewars and Code Katas?
For the more complex codewars.com katas, I've been coding and generalizing some of algorithms here -- see list above.
Most of my solutions are on the Codewars' site. The following solutions represent my journey on more complex katas.
For maximum fun and education, I recommend you solve these on your own without peeking.
- parseInt() reloaded (challenge description)
src/katas/parseint.js
- Skyscrapers (6x6, 4x4) (challenge description)
src/katas/skyscraper.js
- Optimized Pathfinding (challenge description)
src/katas/pathfinding-reachable-fields