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.
Length: 6 Weeks
Effort: 6-10 hours per week
Provider: Princeton University via Coursera
Subject: Computer Science
Instructors: Robert Sedgewick and Kevin Wayne