No description
Find a file
2024-05-15 16:59:36 -04:00
.direnv upload to gh 2024-05-15 16:59:36 -04:00
scripts Drop absolute path to show relative path in "day" command 2022-09-18 19:55:16 +05:30
src upload to gh 2024-05-15 16:59:36 -04:00
.envrc upload to gh 2024-05-15 16:59:36 -04:00
.gitignore dont ignore generated files, improve setup info 2022-09-13 06:47:18 -05:00
.jest.config.json upload to gh 2024-05-15 16:59:36 -04:00
flake.lock upload to gh 2024-05-15 16:59:36 -04:00
flake.nix upload to gh 2024-05-15 16:59:36 -04:00
jest.config.ts feat: ligma sugma 2022-06-22 22:35:32 -06:00
ligma.config.js Fix SinglyLinkedList test and add to ligma.config 2022-09-17 21:07:24 -04:00
package-lock.json feat: prims basic implementation without PQ 2023-08-27 11:52:40 -06:00
package.json upload to gh 2024-05-15 16:59:36 -04:00
prettier.config.js feat: prims algorithm 2022-06-26 08:09:32 -06:00
README.md Merge pull request #13 from Samji/readme-fixes 2022-09-19 21:15:19 -06:00
tsconfig.json upload to gh 2024-05-15 16:59:36 -04:00
yarn.lock upload to gh 2024-05-15 16:59:36 -04:00

Developed live on twitch

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 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.

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.