https://github.com/davidjnevin/kata-machine-theprimagen
Algorithms Course - Typscript
https://github.com/davidjnevin/kata-machine-theprimagen
Last synced: 4 months ago
JSON representation
Algorithms Course - Typscript
- Host: GitHub
- URL: https://github.com/davidjnevin/kata-machine-theprimagen
- Owner: davidjnevin
- Created: 2023-07-02T18:57:52.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-16T12:39:37.000Z (over 1 year ago)
- Last Synced: 2024-12-31T02:23:55.189Z (6 months ago)
- Language: TypeScript
- Size: 261 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## 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 Farts
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.### WARNING
OUT OF DATE. We have quite a few more. need to update
### 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
Make sure you have [Node.js](https://nodejs.org/en/) and yarn installed: `npm install --global yarn`
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.### Help wanted
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.