Mastering Algorithms With C - Kyle Loudon [251]
graph_is_adjacent
graph_adjlists
graph_vcount
graph_ecount
11.3. Implementation and Analysis of Graphs
11.3.1. graph_init
11.3.2. graph_destroy
11.3.3. graph_ins_vertex
11.3.4. graph_ins_edge
11.3.5. graph_rem_vertex
11.3.6. graph_rem_edge
11.3.7. graph_adjlist
11.3.8. graph_is_adjacent
11.3.9. graph_adjlists, graph_vcount, graph_ecount
11.4. Graph Example: Counting Network Hops
11.5. Graph Example: Topological Sorting
11.6. Questions and Answers
11.7. Related Topics
III. Algorithms
12. Sorting and Searching
12.1. Description of Insertion Sort
12.2. Interface for Insertion Sort
issort
12.3. Implementation and Analysis of Insertion Sort
12.4. Description of Quicksort
12.5. Interface for Quicksort
qksort
12.6. Implementation and Analysis of Quicksort
12.7. Quicksort Example: Directory Listings
12.8. Description of Merge Sort
12.9. Interface for Merge Sort
mgsort
12.10. Implementation and Analysis of Merge Sort
12.11. Description of Counting Sort
12.12. Interface for Counting Sort
ctsort
12.13. Implementation and Analysis of Counting Sort
12.14. Description of Radix Sort
12.15. Interface for Radix Sort
rxsort
12.16. Implementation and Analysis of Radix Sort
12.17. Description of Binary Search
12.18. Interface for Binary Search
bisearch
12.19. Implementation and Analysis of Binary Search
12.20. Binary Search Example: Spell Checking
12.21. Questions and Answers
12.22. Related Topics
13. Numerical Methods
13.1. Description of Polynomial Interpolation
13.1.1. Constructing an Interpolating Polynomial
13.1.2. Evaluating an Interpolating Polynomial
13.2. Interface for Polynomial Interpolation
interpol
13.3. Implementation and Analysis of Polynomial Interpolation
13.4. Description of Least-Squares Estimation
13.5. Interface for Least-Squares Estimation
lsqe
13.6. Implementation and Analysis of Least-Squares Estimation
13.7. Description of the Solution of Equations
13.7.1. Finding Roots with Newton's Method
13.7.2. Computing the Derivative of a Polynomial
13.7.3. Understanding the First and Second Derivative
13.7.4. Selecting an Initial Point for Newton's Method
13.7.5. How Newton's Method Works
13.8. Interface for the Solution of Equations
root
13.9. Implementation and Analysis of the Solution of Equations
13.10. Questions and Answers
13.11. Related Topics
14. Data Compression
14.1. Description of Bit Operations
14.2. Interface for Bit Operations
bit_ get
bit_set
bit_xor
bit_rot_left
14.3. Implementation and Analysis of Bit Operations
14.3.1. bit_ get
14.3.2. bit_set
14.3.3. bit_xor
14.3.4. bit_rot_left
14.4. Description of Huffman Coding
14.4.1. Entropy and Minimum Redundancy
14.4.2. Building a Huffman Tree
14.4.3. Compressing and Uncompressing Data
14.4.4. Effectiveness of Huffman Coding
14.5. Interface for Huffman Coding
huffman_compress
huffman_uncompress
14.6. Implementation and Analysis of Huffman Coding
14.6.1. huffman_compress
14.6.2. huffman_uncompress
14.7. Huffman Coding Example: Optimized Networking
14.8. Description of LZ77
14.8.1. Maintaining a Dictionary of Phrases
14.8.2. Compressing and Uncompressing Data
14.8.3. Effectiveness of LZ77
14.9. Interface for LZ77
lz77_compress
lz77_uncompress
14.10. Implementation and Analysis of LZ77
14.10.1. lz77_compress
14.10.2. lz77_uncompress
14.11. Questions and Answers
14.12. Related Topics
15. Data Encryption
15.1. Description of DES
15.1.1. Computing Subkeys
15.1.2. Enciphering and Deciphering Data Blocks
15.2. Interface for DES
des_encipher
des_decipher
15.3. Implementation and Analysis of DES
15.3.1. des_encipher