Skip to content

wheelercj/Algorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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++