
Graph Search, Shortest Paths, and Data Structures
Stanford Online · View on Coursera ↗
Taught by Tim Roughgarden
Computer ScienceMath and Logic
About the course
The primary topics in this part of the specialization are: data structures (heaps, balanced search trees, hash tables, bloom filters), graph primitives (applications of breadth-first and depth-first search, connectivity, shortest paths), and their applications (ranging from deduplication to social network analysis).
The dissent
The most-upvoted critical review (15 votes, 1.0★).
“1) Assignments 1 and 4 test your ability to write optimized code which can handle large input sets (1 million integers) more than knowledge of the algorithm itself. This would be fine except that there is no support or material for figuring this out. Assignment 1's solution as taught in the course, for the most part, does not work for that input size. It's a week of frustration trying to figure out how to handle that. I STILL don't have a proper solution for that problem.”
Coursera's 4.8 comes from 2,004 ratings. Of those, 0.7% are 1–2★.
Starisk reads the reviews learners voted most helpful, and weights each by the square root of its votes: a review with 80 upvotes counts about five times one with 2. Unvoted reviews are not skipped out of laziness — by this model they carry no evidence that other students endorsed them.
That measures what the most-endorsed reviews say, not “true quality.” The rating distribution above is the whole population, so you can see the sample next to it.
Reviews read on 23 Oct 2026.Read them on Coursera ↗