Skip to content
/ algo Public

Coding problems with modern languages, TDD and CI

License

Notifications You must be signed in to change notification settings

protiumx/algo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

algo

Coding problems with modern languages, TDD and CI.

Dependencies

  • Cargo
  • CMake
  • Go
  • Python3
  • NodeJS, Yarn

Folder structure

  • packages/
    • algo-cpp/: solutions in c++ (17)
    • algo-go/: solutions in golang
    • algo-py/: solutions in python 3
    • algo-rust/: solutions in rust
    • algo-ts/: solutions in typescript

Packages

algo-cpp

algo-go

algo-py

algo-rust

  • rustc 1.56
  • Testing: cargo test
  • Conventions: cargo clippy

algo-ts

Coding Problems

All problems are prefixed with algo- an enumerated from zero. This way you can easily find the solutions in any package. Checkout the list of problems here

Testing

All packages are configured to use Makefile as follow

make -C packages/algo-[lang]/ test

Except for algo-ts, where we use yarn

yarn --cwd packages/algo-ts/ test

Contributing

Please feel free to create a PR for:

  • Adding more coding problems (with solutions in all packages if possible)
  • Improving existing solutions
  • Improving projects' config/setup
  • Resolving pending TODO's

NOTE: This repository follows conventional commits practices.

Adding Coding Problems

Ideally what we want:

  • A good description with examples, images or a link to leetcode, hackerank or similar.
  • All PR must be submitted with tests
  • If possible, you might want to provide the solutions in all the different languages.

TODO

  • Setup linting CI jobs
  • Use yarn pnp to reduce CI run time
  • Add GTest sources to repo
  • Fix type check in vscode for algo-cpp and gtest
  • Setup linting for every package
  • Setup input text files to load during tests