Skip to content

My repo demonstrating my implementation of common algorithms and data structures.

Notifications You must be signed in to change notification settings

GerardBradshaw/AlgorithmsAndDataStudy

Repository files navigation

AlgorithmsAndDataStudy

This repo demonstrates how to implement many common data structures and algorithms. It's main purpose was for my learning, but you may be able to learn something too!

Data Strucutures

To learn how they work (and sharpen my programming skills), I implemented the below data structures and used them to solve problems. I put most of them through their paces with automated testing, too.

Implemented in Kotlin

  • ArrayList
  • String and StringBuilder
  • Vector
  • Graph (adjacency list and adjacency matrix)
  • Heap (min and max)
  • LinkedList
  • HashMap
  • HashSet
  • TreeMap
  • Queue
  • Priority queue (using a heap)
  • Stack
  • Tree (AVL and Red-Black)
  • Trie

Implemented in Java

  • HashTable
  • Max heap
  • LinkedList (singly and doubly linked)
  • Queue
  • Stack
  • Tree (binary and binary search)

Algorithms and practice problems

I implemented the most common sorting algorithms (heap sort, quick sort, etc), and even more while completing some practice questions (such as topological sort).

About

My repo demonstrating my implementation of common algorithms and data structures.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published