GithubHelp home page GithubHelp logo

algorithms's Introduction

This repository contains my working files for Coursera/Princeton's Algorithms I course.
I received 100% on each programming assignment. Feel free to use for your own learning, in accordance with Coursera's and any other terms that may apply.


Description.   An introduction to fundamental data types, algorithms, and data structures. Our emphasis is on applications and scientific performance analysis of Java implementations.

Part I focuses on elementary data structures, sorting, and searching. Topics include union-find, binary search, stacks, queues, bags, insertion sort, selection sort, shellsort, quicksort, 3-way quicksort, mergesort, heapsort, binary heaps, binary search trees, red-black trees, separate chaining and linear probing hash tables, Graham scan, and kd-trees.

https://class.coursera.org/algs4partI-005/wiki/view?page=syllabus

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
- 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
- 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
- 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
- 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



algorithms's People

Contributors

heyalexchoi avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.