lingling2012 / algorithms

Algorithms & Data Structures in C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Algorithms & Data Structures in C++

征C++高手加入此项目, 目标:

轻量级
服务器端
高性能
基础/经典算法

约定:

1.  一个算法用一个.h文件表示放到include下.
2.  算法演示的demo程序放到src下.
3.  程序正确后,merge到master分支,并正确修改Makefile

已实现(Implemented)

Array shuffle
Prime test
2D Array
Arbitary Integer 

Bit-Set data structure
Queue data structure
Stack data structure
Binary heap data structure
Priority queue 

Insertion sort
Radix sort
Quick sort
Merge sort
Double linked list
Skip list
Self-organized linked-list ops (move-to-front, move-ahead-one)
Largest common sequence 

Binary search tree
Dynamic order statistics
Red-black tree
Interval tree 
Prefix Tree(Trie)
Suffix Tree(未实现)

Hash by multiplication
Hash table
Universal hash function
Perfect hash
Java's string hash
FNV-1a string hash
Bloom Filter
SHA-1 Message Digest Algorithm
MD5 

Graph data structure
Prim's minimum spanning tree
Directed/Undirected graph ops
Breadth First Search
Depth First Search
Dijkstra's algorithm
Bellman-Ford algorithm
Edmonds-Karp Maximal Flow 

Huffman Coding
Word segementation(CHN/GB18030) using HMM and viterbi algorithm.
A* algorithm 

About

Algorithms & Data Structures in C++