数据结构与算法
主体结构如下所示:
- data-structures-and-algorithms
- algorithm // 算法
- AstarAlgorithm // A* 算法:a-star algorithm (静态路网中求解最短路径最有效的直接搜索方法)
- BacktrackingAlgorithm // 回溯算法
- DivideAndConquer // 分治算法
- DynamicProgramming // 动态规划
- GreedyAlgorithm // 贪心算法
- HeuristicallySearchAlgorithm // 启发式搜索算法(Heuristically Search Algorithm)
- ParallelAlgorithm // 并行算法:分治思想多线程并行处理
- ProbabilityStatistics // 概率统计:朴素贝叶斯算法
- ShortestPathAlgorithm // 最短路径算法:Dijkstra
- VectorSpace // 向量空间:欧几里得距离(Euclidean distance)
- array // 数组
- BrokenNumber // 断号查询:求len长数组a[]中缺少的顺序数字
- MiddleNode // 求数组的中间节点
- ReverseIteratively // 数组的反转
- demo // 测试
- Demo // 测试
- graph // 图
- Graph // 图
- hash // 哈希/散列
- HashAlgorithm // 哈希算法
- HashTable // 散列表/哈希表
- index // 索引
- Index // 索引:Index
- linkedlist // 链表
- MiddleNode // 求链表的中间节点
- ReverseIteratively // 单链表的反转
- SkipList // 跳表
- map // 键值对
- BitMap // 位图:布隆过滤器(Bloom Filter)
- queue // 队列
- ArrayQueue // 用数组实现的队列
- CircularQueue // 数组实现的循环队列
- Disruptor // 内存消息队列:无锁的并发循环消息队列(Disruptor)
- recursion // 递归
- Recursion // 递归算法
- redis // Redis
- Redis // Redis 非关系型数据库:常用数据类型的数据结构
- search // 搜索
- BinarySearch // 二分查找
- FirstSearch // 深度优先(DFS)和广度优先(BFS)搜索算法
- sort // 排序
- BubbleSort // 冒泡排序
- HeapSort // 堆排序
- InsertionSort // 插入排序
- LinearSort // 线性排序
- MergeSort // 归并排序
- Quicksort // 快速排序
- SelectionSort // 选择排序
- ShellSort // 希尔排序
- Sorts // 排序总结
- TopologicalSort // 拓扑排序(基于有向无环图的一个算法:Kahn/DFS)
- stack // 栈
- ArrayStack // 基于数组实现的顺序栈
- string // 字符串
- EditDistance // 编辑距离:量化两个字符串的相似度(有莱文斯坦距离和最长公共子串长度)
- PalindromicString // 回文字符串:是一个正读和反读都一样的字符串。
- StringMatching // 字符串匹配(BF/RK/BM/KMP/Trie/AC自动机)
- tree // 树
- AhoCorasick // AC 自动机算法
- BinarySearchTree // 二叉查找树
- BinaryTree // 二叉树
- BPlusTree // B+树:mysql 索引
- Heap // 堆
- RecursionTree // 递归树
- RedBlackTree // 红黑树
- Trie // 字典树、前缀树
- .gitignore
- README.md