Skip to content

This repo contains the implementations for all algorithms and data structures taught in Algorithms, Part I course on Coursera. This exists primarily for reference purposes.

License

Notifications You must be signed in to change notification settings

aniket-kr/Algorithms-Part-I

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Algorithms, Part I

This repo contains implementations for all data structures and associated algorithms that I have learnt from Algorithms, Part I on Coursera.

The implementations are in two languages - Java and Python3, for the sake of practice and understanding of the core concepts.

Contents

Sorting Algorithms

  1. Bubble Sort
  2. Selection Sort
  3. Insertion Sort
  4. Shell Sort
  5. Mergesort
  6. Quicksort
  7. Heapsort

Collections

  1. Linked List
  2. Stack
  3. Queue
  4. Deque
  5. Randomized Queue
  6. Priority Queue

Symbol Tables

  1. Unordered ST
  2. Ordered ST
  3. Left-Leaning Red Black Trees
  4. Linear Probing Hash Table
  5. Separate Chaining Hash Table

Miscellaneous

  1. Weighted Quick Union with Path Compression

API

The API is the same for both the Java and Python3 versions, using their respective naming conventions.

About

This repo contains the implementations for all algorithms and data structures taught in Algorithms, Part I course on Coursera. This exists primarily for reference purposes.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages