Based on @ThePrimeagen course in frontendmasters.com, implementing the algorithms myself in order to really learn it. The rest of the README is written by ThePrimeagen in the (original repo)[https://github.com/ThePrimeagen/kata-machine].
Lengthy Instrumentation Generating Massive Anticompetitive Computational Help for Intermediate Coders // n9
Literal Improvement Gaining Master and Tutelage on Algorithms Let's Intelligently Generate Multiple Algorithm Training Assessments // permdaddy
Studious Users Get Major Abilities. New Useful Training for Students
Learn Intermediate Groundbreaking Massive Algorithms. Free Algorithm Research & Training System
make an issue and we will come up with the potential name.
I have just started to add algorithms, so the number of supported algorithms is limited at the moment, but will grow fairly quick.
OUT OF DATE. We have quite a few more. need to update
- Insertion sort
- Merge sort
- QuickSort
- Prim's MST (Adjacency List)
- Dijkstra's Shortest Path (Adjacency List)
- Singly linked list
- Doubly linked list
- Queue
- Stack
- Graph with Adjacency List
- Graph with Adjacency Matrix (untested)
Make sure you have Node.js and yarn installed: npm install --global yarn
clone the repo and install the dependencies
yarn install
edit the ligma.config.js
file
module.exports = {
dsa: [
"InsertionSort",
"MergeSort",
"Queue",
"Stack",
"QuickSort",
"DijkstraList",
"PrimsList",
],
}
create a day of katas, this will use the list in the ligma.config.js
.
yarn generate
this will progressively create folders named
src/day1
src/day2
...
yarn generate
will also update the tsconfig.json
and jest.config
to point
the latest day
folder via tspaths. This allows us to avoid updating anything
for testing each day.
yarn test
I have yet to create a testing strategy for next sets of algorithms, but we will get there when i cross that bridge.
A simple way to specify test, thinking something like tests.json
and cat test.json 2> /dev/null
to specify the tests to run. tests.json wouldn't be
committed.