https://www.coursera.org/learn/algorithms-part1/
-
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
Grade: 91%
-
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
Grade: 96%
-
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
Grade: 89%
-
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
Grade: 95%
-
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
Grade: 84%