Skip to content

e-papanicolas/data-structures-and-algorithms

Repository files navigation

Data Structures and Algorithms

DATA STRUCTURES

  • Strings
  • Arrays
  • Linked lists
  • Stacks and queues
  • Hash maps** and build from scratch with arrays
  • Heaps/Priority queue
  • Trees: binary, binary search, n-ary, tries, balanced binary
  • Graphs: object/pointer, matrix, adjacency list

ALGORITHMS

  • Tree traversal: BFS & DFS, preorder, postorder, inorder
  • Graph traversal: BFS and DFS // Computational complexity, tradeoffs, implementation
  • Dijkstra’s Algorithm and A*
  • Other: NP-complete problems, traveling salesman and knapsack problem

Sorting

  • Merge sort
  • Quick sort
  • Other sorting algos: heap sort, radix sort, bucket sort

Patterns

  • Two pointers
  • Sliding window
  • Binary search
  • Greedy algorithms
  • Intervals

Etc

  • Dynamic Programming
  • Bit manipulation

OTHER CONCEPTS

  • Mathematics: discrete math, combinatorics, probability
  • BIG O
  • Number theory
  • Testing

Resources

BIG O

DATA VISUALIZATION

About

My implementations, practice, and tests.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published