"Algorithm Exquisite Explanation: C Language Description" source code and Xcode project, Linux project
Just use Xcode to open MasteringAlgorithms.xcodeproj
on Mac. Algorithms.xcodeproj
is the algorithm library file project. Each Example is a separate run file.
Mac or Linux command line
All you need is a simple c compilation environment cc
Then execute ./run bfs
, where bfs
is the example directory in Example
.
You can also use cc
gcc
etc. gcc source/*.c Example/bfs/main.c -I ./include -o bfs && ./bfs
data structure
linked list
- singly linked list
- Page frame management
- doubly linked list
- circular linked list
- Second chance page replacement
stacks and queues
- stack
- queue
- event handling
gather
- gather
- Collection coverage
Hash table
- chained hash table
- symbol table
- Open address hash table
Tree
- Binary tree
- Binary tree traversal
- binary search tree
Heap and priority queue
- heap
- priority queue
- Parcel sorting
picture
- picture
- Deep search of graphs
- Graph breadth search
algorithm
Sort and search
- insertion sort
- Quick sort
- directory listing
- merge sort
- counting sort
- Radix sort
- binary search
- spell checker
Numerical calculation
- polynomial interpolation
- least squares estimation method
- Equation Solving
Data compression
- Bit operations
- Huffman coding
- Network transmission optimization
- LZ77
Data encryption
- DES algorithm
- block encryption mode
- RSA algorithm
graph algorithm
- minimum spanning tree
- shortest path
- shortest distance route
- traveling salesman problem
geometric algorithm
- Test whether line segments intersect
- Convex hull calculation
- Spherical arc length
- The approximate distance between two points on Earth