https://github.com/originalix/algorithm
算法(第4版)TypeScript 实现
https://github.com/originalix/algorithm
algorithm
Last synced: 27 days ago
JSON representation
算法(第4版)TypeScript 实现
- Host: GitHub
- URL: https://github.com/originalix/algorithm
- Owner: originalix
- License: mit
- Created: 2017-04-20T23:30:57.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T23:11:55.000Z (about 3 years ago)
- Last Synced: 2024-04-14T21:47:01.637Z (almost 2 years ago)
- Topics: algorithm
- Language: TypeScript
- Homepage:
- Size: 1.47 MB
- Stars: 16
- Watchers: 3
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 算法(第4版)TypeScript 版本
---
本仓库包含了 TypeScript 描述的算法与数据结构。
是我在阅读经典算法书籍《算法(第4版)》时完成的,记录自己的算法学习过程。
## 使用方式
Install:
```bash
yarn
npm install
```
Compile:
```bash
yarn start
npm start
```
Test:
> 执行上述每个算法的单元测试用例
```bash
yarn test
npm run test
```
## 队列、链表、栈
* [Dijkstra 的双栈算术表达式求值算法](src/algs4/1-3/evaluate.ts)
* [队列(链表实现)](src/algs4/1-3/node-queue.ts)
* [栈(链表实现)](src/algs4/1-3/node-stack.ts)
* [动态调整大小的栈](src/algs4/1-3/resizing-array-stack.ts)
## 并查集
* [并查集](src/algs4/1-5/union-find.ts)
* [并查集(树型森林的表示)](src/algs4/1-5/quick-union.ts)
* [并查集(加权算法)](src/algs4/1-5/weight-quick-union.ts)
## 排序
* [插入排序](src/algs4/sort/insertion.ts)
* [选择排序](src/algs4/sort/selection.ts)
* [希尔排序](src/algs4/sort/shell-sort.ts)
* [归并排序](src/algs4/sort/merge-sort.ts)
* [快速排序](src/algs4/sort/quick-sort.ts)
* [三指针快排](src/algs4/sort/quick3way.ts)
* [优先队列(堆)](src/algs4/sort/max-pq.ts)
* [堆排序](src/algs4/sort/heap-sort.ts)
## 查找
* [符号表 顺序查找(基于无序链表)](src/algs4/search/sequential-search-st.ts)
* [符号表 二分查找(基于有序数组)](src/algs4/search/binary-search-st.ts)
* [二叉查找树](src/algs4/search/binary-search-tree.ts)
* [红黑树](src/algs4/search/red-black-bst.ts)
## 图
* [无向图(邻接表表示)](src/algs4/graph/graph.ts)
* [DFS 深度优先搜索](src/algs4/graph/dfs.ts)
* [BFS 广度优先搜索](src/algs4/graph/bfs.ts)
* [连通分量](src/algs4/graph/connect-components.ts)
* [符号图](src/algs4/graph/symbol-graph.ts)
* [有向图](src/algs4/graph/digraph.ts)
* [有向图的可达性](src/algs4/graph/directed-dfs.ts)
* [有向图中深度优先搜索的顶点排序](src/algs4/graph/depth-first-order.ts)
* [拓补排序](src/algs4/graph/topological.ts)
* [有向图的强连通分量](src/algs4/graph/kosaraju.ts)
* [最小生成树的 Prim 算法](src/algs4/graph/prim-mst.ts)
* [最小生成树的 Kruskal 算法](src/algs4/graph/kruskal-mst.ts)
* [最短路径 Dijkstra 算法](src/algs4/graph/dijkstra-sp.ts)
* [无环加权有向图的最短路径算法](src/algs4/graph/acyclic-sp.ts)
## 字符串
* [LSD(低位优先的字符串排序)](src/algs4/strings/LSD.ts)
* [基于单词查找树的符号表](src/algs4/strings/tries-st.ts)