Skip to content

Repository for course assignments for Princeton Algorithms I + II

Notifications You must be signed in to change notification settings

nicoluca/princeton_algorithms

Repository files navigation

Princeton Algorithms I + II Programming Assignments

This repository contains my solutions to the programming assignments of the Princeton Algorithms I and Princeton Algorithms II courses on Coursera.

Only the code of the submissions is included, not potential classes provided by the course, which can be found on the course website.

Following assignments are included:

Course part Week Assignment Description Topics Score Link
I 1 Percolation Estimate the percolation threshold of a given grid. Union-find, Monte Carlo simulation 84/100 Solution
I 2 Deques and Randomized Queues Implement a deque and randomized queue data structure. Linked lists, arrays, resizing arrays, iterators 99/100 Solution
I 3 Collinear Points Find all collinear points in a given set of points. Sorting, line segments, brute force vs. sorting 94/100 Solution
I 4 8 Puzzle Solve the 8 puzzle game using priority search. Priority queues, A* search algorithm 98/100 Solution
I 5 Kd-Trees Implement a 2d-tree data structure and use it to find the nearest neighbor of a given point. Binary search trees, 2d-trees, range search, nearest neighbor search 91/100 Solution
II 1 WordNet Calculate the shortest ancestral path between two given nouns and the distance between them. Directed graphs, shortest paths, topological sorting, digraphs, breadth-first search, depth-first search 92/100 Solution
II 2 Seam Carving Reduce the width or height of an image by removing the least important pixels. Shortest paths, image processing, sorting 94/100 Solution
II 3 Baseball Elimination Calculate all teams that are mathematically eliminated from winning the given baseball division. Flow networks, maxflow, mincut, Ford-Fulkerson algorithm 100/100 Solution
II 4 Boggle Calculate all possible words in a given Boggle board for a given dictionary. Tries, string processing, symbol tables 91/100 Solution
II 5 Burrows-Wheeler Implement the Burrows-Wheeler data compression algorithm. String sorting, data compression 100/100 Solution

About

Repository for course assignments for Princeton Algorithms I + II

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages