Skip to content

Try3D/kata-machine-py

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kata machine

Introduction

An exercise-based project to practice common data structures and algorithms in python. Based on ThePrimeagen's kata machine.

Motivation

If I don't keep practicing data structures and algorithms, I forget it. Hence, I am building this to automate the boring parts of dsa which is designing the inteface and testing.

Getting Started

Clone the repo:

git clone https://github.com/try3d/kata-machine

Change into the directory:

cd kata-machine

Generate the exercise files:

python main.py generate

Start editing the files in exercises/ directory.

Usage

Start solving any question.

To run all tests, execute:

python main.py test

or to run only a specific test, run:

python main.py test :filename

NOTE: You don't have to enter the entire file name. You can fuzzy run tests. For example, linked_list can be shortened to linked or list or l.

Algorithms

Search

  • Linear Search
  • Binary Search

Sort

  • Bubble Sort
  • Selection Sort
  • Insertion Sort
  • Merge Sort
  • Quick Sort

List

  • Stack
  • Queue
  • Deque

Tree

  • Binary Search Tree
  • Pre-order traversal
  • In-order traversal
  • Post-order traversal
  • Level-order traversal
  • Heap

Path finding

  • Dijkstra's Algorithm

About

An exercise-based project to practice common data structures and algorithms in python.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages