Interested in learning Algorithms and Data Structures? This top rated course from Princeton University is the best place to start.
Princeton’s Algorithms course description
Algorithms, Part I is an introduction to fundamental data types, algorithms, and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Specific topics covered include union-find algorithms; basic iterable data types (stack, queues, and bags); sorting algorithms (quicksort, mergesort, heapsort) and applications; priority queues; binary search trees; red-black trees; hash tables; and symbol-table applications.
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.
- Analysis of Algorithms
- Stacks and Queues
- Elementary Sorts
- Priority Queues
- Elementary Symbol Tables
- Balanced Search Trees
- Geometric Applications of BSTs
- Hash Tables
- Symbol Table Applications
Course Details: Algorithms, Part I