Skip to content

Latest commit

 

History

History
31 lines (26 loc) · 1.86 KB

README.md

File metadata and controls

31 lines (26 loc) · 1.86 KB

Algorithms

Examples of various algorithms and data structures implemented and thoroughly tested in various languages. Here are other resources that helped me learn about algorithms.

searching and sorting algorithms (C++ and Java)

  • bubble sort
  • selection sort
  • insertion sort
  • shell sort
  • quicksort
  • merge sort
  • heap sort
  • linear search
  • binary search
  • 2D binary search

data structures

  • a generic linked list class implemented in C++
    • uses unique pointers and std::make_unique to make memory leaks nearly impossible
    • upholds The Rule of 5 and RAII principles
    • follows much of the C++ Core Guidelines by Bjarne Stroustrup & Herb Sutter
    • has all the methods one would expect as well as reverse, map, filter, and reduce.
    • requires C++17 or newer
  • trees implemented in Go
    • random binary tree generation
    • random binary search tree (BST) generation
    • tree traversals (inorder, preorder, postorder, BFS, DFS)
  • graphs
    • Dijkstra's Shortest Path implemented in Python and C++