Assignments:
- Percolation: Write a program to estimate the value of the percolation threshold via Monte Carlo simulation. Used WeightedQuickUnion data structure to efficiently model system percolation.
http://coursera.cs.princeton.edu/algs4/assignments/percolation.html
http://coursera.cs.princeton.edu/algs4/checklists/percolation.html
- Queues: Write a generic data type for a deque and a randomized queue. The goal of this assignment is to implement elementary data structures using arrays and linked lists, and to introduce you to generics and iterators.
http://coursera.cs.princeton.edu/algs4/assignments/queues.html
http://coursera.cs.princeton.edu/algs4/checklists/queues.html
- Collinear: Write a program to recognize line patterns in a given set of points. Use sorting by slope to efficiently determine collinearity in a set of points.
http://coursera.cs.princeton.edu/algs4/assignments/collinear.html
http://coursera.cs.princeton.edu/algs4/checklists/collinear.html
- 8Puzzle: Write a program to solve the 8-puzzle problem (and its natural generalizations) using the A search algorithm. Used priority queue to find the most efficient solution to a given 8-puzzle problem.
http://coursera.cs.princeton.edu/algs4/assignments/8puzzle.html
http://coursera.cs.princeton.edu/algs4/checklists/8puzzle.html
- KdTree: Write a data type to represent a set of points in the unit square (all points have x- and y-coordinates between 0 and 1) using a 2d-tree to support efficient range search (find all of the points contained in a query rectangle) and nearest neighbor search (find a closest point to a query point). 2d-trees have numerous applications, ranging from classifying astronomical objects to computer animation to speeding up neural networks to mining data to image retrieval.
http://coursera.cs.princeton.edu/algs4/assignments/kdtree.html
http://coursera.cs.princeton.edu/algs4/checklists/kdtree.html