87 lines
1.9 KiB
Markdown
87 lines
1.9 KiB
Markdown
## Developed live on twitch
|
|
[ThePrimeagen](https://twitch.tv/ThePrimeagen)
|
|
|
|
## Naming
|
|
### Lig-Machine
|
|
Lengthy Instrumentation Generating Massive Anticompetitive Computational Help for Intermediate Coders // n9
|
|
|
|
### Ligmata
|
|
Literal Improvement Gaining Master and Tutelage on Algorithms
|
|
Let's Intelligently Generate Multiple Algorithm Training Assessments // permdaddy
|
|
|
|
### Sugma Nuts
|
|
Studious Users Get Major Abilities. New Useful Training for Students
|
|
|
|
### Ligma Fart
|
|
Learn Intermediate Groundbreaking Massive Algorithms. Free Algorithm Research & Training System
|
|
|
|
|
|
### If you have a suggestion
|
|
make an issue and we will come up with the potential name.
|
|
|
|
### WARNING
|
|
I have just started to add algorithms, so the number of supported algorithms is
|
|
limited at the moment, but will grow fairly quick.
|
|
|
|
### Supported Algorithm
|
|
* Insertion sort
|
|
* Merge sort
|
|
* QuickSort
|
|
* Prim's MST (Adjacency List)
|
|
* Dijkstra's Shortest Path (Adjacency List)
|
|
|
|
### Supported Data Structures
|
|
* Singly linked list
|
|
* Doubly linked list
|
|
* Queue
|
|
* Stack
|
|
* Graph with Adjacency List
|
|
* Graph with Adjacency Matrix (untested)
|
|
|
|
### How It Works
|
|
|
|
clone the repo and install the dependencies
|
|
|
|
```bash
|
|
yarn install
|
|
```
|
|
|
|
edit the `ligma.config.js` file
|
|
```javascript
|
|
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`.
|
|
```bash
|
|
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.
|
|
|
|
#### Testing
|
|
```
|
|
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.
|