A monorepo contains some of common algorithms and data structures written in Typescript. (no third-party dependencies)
- Migrate from 2.x.x: https://github.com/guanghechen/algorithm.ts/blob/release-3.x.x/MIGRATION.md
Package | Version | Description |
---|---|---|
@algorithm.ts/base64 | A Base64 encoding implementation. | |
@algorithm.ts/bellman-ford | Bellman-ford algorithm. #ShortestPath | |
@algorithm.ts/binary-index-tree | Binary Index Tree. | |
@algorithm.ts/bipartite-matching | The algorithm to find the maximum matching of the bipartite graph. | |
@algorithm.ts/binary-search | Binary search related algorithms, includes binarySearch , lowerBound and upperBound . |
|
@algorithm.ts/calculator | A tiny calculator for number arithmetics. | |
@algorithm.ts/diff | To find the minium difference between two subsequence or string. | |
@algorithm.ts/dijkstra | Dijkstra algorithm optimized with priority-queue. #ShortestPath | |
@algorithm.ts/dinic | Dinic algorithm. #MaxFlow, #NetworkFlow. | |
@algorithm.ts/dlx | DLX algorithm. | |
@algorithm.ts/findset | Find set. | |
@algorithm.ts/gcd | Greatest Common Divisor (GCD) and extended Euclidean algorithm. | |
@algorithm.ts/graph | Types and utils from solving graph problems. | |
@algorithm.ts/history | A simple data structure to manage history through circular stack. | |
@algorithm.ts/huffman | A Huffman coding implementation. | |
@algorithm.ts/isap | ISAP algorithm. #MaxFlow, #NetworkFlow. | |
@algorithm.ts/shuffle | Includes Knuth-Shuffle algorithm. | |
@algorithm.ts/lcs | Find the Longest Common Subsequence (include a linear space impelmentation to find a lcs). | |
@algorithm.ts/manacher | The manacher algorithm for solving palindrome string problems. | |
@algorithm.ts/mcmf | MCMF algorithm. #MinCostMaxFlow, #NetworkFlow. | |
@algorithm.ts/queue | Queues, includes priority-queue (Min Heap), circular-queue. | |
@algorithm.ts/roman | Support the mutual conversion between Roman numerals and Arabic numerals. | |
@algorithm.ts/sliding-window | Sliding window algorithm. | |
@algorithm.ts/stack | Stacks, includes circular-stack. | |
@algorithm.ts/prime | A linear time algorithm to sieve prime numbers and totient. | |
@algorithm.ts/sudoku | A collection of utilities to generate / solve Sudoku problems. | |
@algorithm.ts/trie | Trie. (digital tree or prefix tree) |
algorithm.ts is MIT licensed.