### Algorithms Online Book and Course Lecture Slides

Here is an online algorithms textbook,
**Algorithms, 4th Edition**,
hosted by Princeton University. It presents and covers all of the
fundamental knowledge you need to understand and apply when using
algorithms and data structures in your programming and application
development. These are the most important algorithms and data
structures
in use today. The book uses specific applications to science,
engineering, and industry to facilitate the concepts. Here is a list of
the
algorithms and clients in this textbook.__Algorithm Book Chapters__:

Chapter 1: Fundamentals
introduces a scientific and engineering basis for comparing algorithms
and making predictions. It also includes our programming model.

Chapter 2: Sorting
considers several classic sorting algorithms, including
insertion sort, mergesort, and quicksort. It also includes a binary
heap implementation of a priority queue.

Chapter 3: Searching
describes several classic symbol table implementations, including
binary search trees, red-black trees, and hash tables.

Chapter 4: Graphs
surveys the most important graph processing problems, including
depth-first search, breadth-first search, minimum spanning trees,
and shortest paths.

Chapter 5: Strings
investigates specialized algorithms for string processing,
including string sorting, substring search, tries,
regular expressions, and data compression.

Chapter 6: Context
highlights connections to
systems programming, scientific computing, commercial applications,
operations research, and intractability.

Also, here are the **Lecture Slides and Notes for Princeton's Algorithms and Data Structures course**.

These algorithm course lectures target algorithms for
sorting, searching, and string processing, as well, including geometric and
graph algorithms. They include information on developing
implementations, understanding their performance characteristics, and
estimating their potential effectiveness in applications.__Algorithm Lectures__:

1. Union-find

2. Analysis of algorithms

3. Stacks and queues

4. Elementary sorts

5. Efficient sorts

6. Advanced topics in sorting

7. Priority queues

8. Elementary symbol tables

9. Binary search trees

10. Balanced BSTs

11. Hashing

13. Undirected graphs

14. Directed graphs

15. Minimum spanning trees

16. Shortest paths

17. Radix sorts

18. Tries

19. Pattern matching DFA
KMP

20. Data compression Huffman*
LZW*

21. Geometric algorithms convex hulls

22. Geometric search
sweep line intersection

23. Reductions

24. Combinatorial search The Longest Path [mp3]

Tags for this post>> Algorithms