Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kubk/algoholizm

Algorithms and Data Structures implemented in TypeScript using TDD
https://github.com/kubk/algoholizm

algorithms tdd typescript

Last synced: 25 days ago
JSON representation

Algorithms and Data Structures implemented in TypeScript using TDD

Awesome Lists containing this project

README

        

# algoholizm [![Build Status](https://travis-ci.org/kubk/algoholizm.svg?branch=master)](https://travis-ci.org/kubk/algoholizm)

Algorithms and Data Structures implemented in TypeScript using TDD.

### Solutions
- 📁 [backtracking](src/backtracking)
- [all-possible-coin-changes.ts](src/backtracking/all-possible-coin-changes.ts)
- [partitions.ts](src/backtracking/partitions.ts)
- [permutations.ts](src/backtracking/permutations.ts)
- 📁 [big-integer](src/big-integer)
- [big-integer.ts](src/big-integer/big-integer.ts)
- 📁 [bitwise-operators](src/bitwise-operators)
- [bit-operations.ts](src/bitwise-operators/bit-operations.ts) + [tests](src/bitwise-operators/bit-operations.test.ts)
- [bitwise-number.ts](src/bitwise-operators/bitwise-number.ts) + [tests](src/bitwise-operators/bitwise-number.test.ts)
- [ip-v4-pack.ts](src/bitwise-operators/ip-v4-pack.ts) + [tests](src/bitwise-operators/ip-v4-pack.test.ts)
- [rgb-conversion.ts](src/bitwise-operators/rgb-conversion.ts) + [tests](src/bitwise-operators/rgb-conversion.test.ts)
- 📁 [crypto](src/crypto)
- [caesar-cipher.ts](src/crypto/caesar-cipher.ts)
- [mod.ts](src/crypto/mod.ts)
- [vernam-cipher.ts](src/crypto/vernam-cipher.ts)
- [vigenere-cipher.ts](src/crypto/vigenere-cipher.ts)
- 📁 [dynamic-programming](src/dynamic-programming)
- [climb-stairs.ts](src/dynamic-programming/climb-stairs.ts)
- [fibonacci.ts](src/dynamic-programming/fibonacci.ts)
- [min-coin-change.ts](src/dynamic-programming/min-coin-change.ts)
- 📁 [encoding](src/encoding)
- [roman-to-int.ts](src/encoding/roman-to-int.ts)
- [run-length-encoding.ts](src/encoding/run-length-encoding.ts) + [tests](src/encoding/run-length-encoding.test.ts)
- 📁 [graph](src/graph)
- [adjacency-list-to-graph.ts](src/graph/adjacency-list-to-graph.ts)
- [all-paths-from-source-to-target.ts](src/graph/all-paths-from-source-to-target.ts)
- [breadth-first-search.ts](src/graph/breadth-first-search.ts)
- [depth-first-search.ts](src/graph/depth-first-search.ts)
- [find-if-path-exists-in-graph.ts](src/graph/find-if-path-exists-in-graph.ts)
- [find-judge.ts](src/graph/find-judge.ts)
- [get-affected-packages.ts](src/graph/get-affected-packages.ts)
- [solve-graph.ts](src/graph/solve-graph.ts)
- 📁 [iteration](src/iteration)
- [binary-gap.ts](src/iteration/binary-gap.ts)
- [cyclic-rotation.ts](src/iteration/cyclic-rotation.ts)
- 📁 [list](src/list)
- [linked-list.ts](src/list/linked-list.ts) + [tests](src/list/linked-list.test.ts)
- [merge-linked-lists.ts](src/list/merge-linked-lists.ts) + [tests](src/list/merge-linked-lists.test.ts)
- 📁 [miscellaneous](src/miscellaneous)
- 📁 [anticrisis-measures-fp](src/miscellaneous/anticrisis-measures-fp)
- [solution.ts](src/miscellaneous/anticrisis-measures-fp/solution.ts)
- [get-note-frequency.ts](src/miscellaneous/get-note-frequency.ts)
- 📁 [parsing](src/parsing)
- [evaluate-expression.ts](src/parsing/evaluate-expression.ts)
- [parser-combinators.ts](src/parsing/parser-combinators.ts) + [tests](src/parsing/parser-combinators.test.ts)
- [reverse-polish-notation-calculator.ts](src/parsing/reverse-polish-notation-calculator.ts) + [tests](src/parsing/reverse-polish-notation-calculator.test.ts)
- [shunting-yard.ts](src/parsing/shunting-yard.ts) + [tests](src/parsing/shunting-yard.test.ts)
- 📁 [recursion](src/recursion)
- [can-sum.ts](src/recursion/can-sum.ts)
- [fibonacci.ts](src/recursion/fibonacci.ts)
- [grid-possible-paths.ts](src/recursion/grid-possible-paths.ts)
- [sum-up-to.ts](src/recursion/sum-up-to.ts)
- 📁 [search](src/search)
- [binary-search.ts](src/search/binary-search.ts)
- [linear-search.ts](src/search/linear-search.ts)
- 📁 [sort](src/sort)
- [bubble-sort.ts](src/sort/bubble-sort.ts)
- 📁 [spaced-repetition](src/spaced-repetition)
- [generate-leitner-boxes.ts](src/spaced-repetition/generate-leitner-boxes.ts)
- [generate-leitner-cli-schedule.ts](src/spaced-repetition/generate-leitner-cli-schedule.ts)
- [generate-leitner-matrix-schedule.ts](src/spaced-repetition/generate-leitner-matrix-schedule.ts)
- [range.ts](src/spaced-repetition/range.ts)
- 📁 [stack](src/stack)
- [are-parenthesis-valid.ts](src/stack/are-parenthesis-valid.ts)
- [stack.ts](src/stack/stack.ts)
- 📁 [tree](src/tree)
- [convert-adjacency-list-to-tree.ts](src/tree/convert-adjacency-list-to-tree.ts) + [tests](src/tree/convert-adjacency-list-to-tree.test.ts)
- [convert-tree-to-flat-map.ts](src/tree/convert-tree-to-flat-map.ts) + [tests](src/tree/convert-tree-to-flat-map.test.ts)
- [traverse-json.ts](src/tree/traverse-json.ts) + [tests](src/tree/traverse-json.test.ts)
- 📁 [vector](src/vector)
- [vector-2d.ts](src/vector/vector-2d.ts) + [tests](src/vector/vector-2d.test.ts)
- [vector-3d.ts](src/vector/vector-3d.ts) + [tests](src/vector/vector-3d.test.ts)

### Installation
- `git clone`
- `npm i`
- `npm test`