• Stars
    star
    147
  • Rank 251,347 (Top 5 %)
  • Language
    Python
  • License
    MIT License
  • Created over 8 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Coursera's Data Structures and Algorithms Specialization

Coursera: Data Structures and Algorithms Specialization

Progress: 4/6 courses completed

This repository contains almost all the solutions for Data Structures and Algorithms Specialization. The language of choice is Python3, but I tend to switch to Ruby/Rust in the future. All program assignments can be found inside the course weeks directory.

Disclaimer: The below solutions is for reference only. Please design and implement your own algorithms to pass the courses.

Course 1. Algorithmic Toolbox

Week 1. Introduction

Week 2. Greedy Algorithms

Week 3. Divide and Conquer

Week 4. Dynamic Programming

Course 2. Data Structures

Week 1. Basic Data Structures

Week 2. Priority Queues and Disjoint Sets

Week 3. Hash Tables and Hash Functions

Week 4. Binary Search Trees

Course 3. Algorithms on Graphs

Week 1. Decomposition of Graphs 1

Week 2. Decomposition of Graphs 2

Week 3. Paths in Graphs 1

Week 4. Paths in Graphs 2

Week 5. Minimum Spanning Trees

Week 6. Advanced Shortest Paths Project (Optional)

Course 4. Algorithms on Strings

Week 1. Suffix Trees

Week 2. BWT and Suffix Arrays

Week 3-4. Algorithmic Challenges

Contributing

All contributions are welcome. Just make a PR. Below is a list of general improvements that need to be added that I would love help with:

  • Improve documentation
  • Clean up code (by fixing pep8 errors)
  • Better algorithms that reduce time complexity (espescially for course #3 & #4)