Ecosyste.ms: Awesome

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

https://github.com/yangshun/lago

📕 Data Structures and Algorithms library in TypeScript
https://github.com/yangshun/lago

algorithm data-structures javascript typescript

Last synced: 17 days ago
JSON representation

📕 Data Structures and Algorithms library in TypeScript

Lists

README

        

Lago


Lago logo



Credits: Illustration by unDraw


---


💡 Practice implementing Data Structures and Algorithms in JavaScript for free on GreatFrontEnd 💡


---

## Contents

Common Data Structures and Algorithms implementations in JavaScript.

### Data Structures

- [List](src/data-structures/List.ts)
- [Stack](src/data-structures/Stack.ts)
- [Queue](src/data-structures/Queue.ts)
- [Double-ended Queue](src/data-structures/Deque.ts)
- [Trie](src/data-structures/Trie.ts)
- [Binary Tree](src/data-structures/BinaryTree.ts)
- [Binary Search Tree](src/data-structures/BinarySearchTree.ts)
- [N-D array](src/data-structures/NDArray.ts)
- [Bloom Filter](src/data-structures/BloomFilter.ts)
- [Disjoint-set](src/data-structures/DisjointSet.ts)
- [Counter](src/data-structures/Counter.ts)
- [Graph (map-based)](src/data-structures/Graph.ts)
- [Priority Queue](src/data-structures/PriorityQueue.ts)
- [AVL Tree](src/data-structures/AVLTree.ts)
- [Heap](src/data-structures/Heap.ts)
- Suffix Tree (Help Wanted!)
- Segment Tree (Help Wanted!)

### Algorithms

- [Binary Search](src/algorithms/binarySearch.ts)
- [Quickselect](src/algorithms/quickSelect.ts)
- [Merge Sort](src/algorithms/mergeSort.ts)
- [Quicksort](src/algorithms/quickSort.ts)
- [Heap Sort](src/algorithms/heapSort.ts)
- [Topological Sort](src/algorithms/topologicalSort.ts)
- [Breadth-first Search](src/algorithms/breadthFirstSearch.ts)
- [Depth-first Search](src/algorithms/depthFirstSearch.ts)
- [Dijkstra's Algorithm](src/algorithms/dijkstra.ts)
- [Floyd-Warshall Algorithm](src/algorithms/floydWarshall.ts)
- [Bellman-Ford Algorithm](src/algorithms/bellmanFord.ts)

## Development

```sh
$ yarn install
$ yarn test --watch
```

Before pushing/submitting PR

```sh
$ yarn check-all
```