My implementation of Linked Lists, Binary Search Trees, Graphs, Adjacency Lists, BFS, DFS.
#append(value), #prepend(value), #size, #head, #tail, #at(index), #pop, #contains?(value), #find(value), #to_s, #insert_at(value, index), #remove_at(index).
#build_tree, #insert, #delete, #find, #level_order, #inorder, #preorder, #postorder, #height, #depth, #balanced?, #rebalance.
This outputs the shortest path that a knight has to take to go from position A to position B on a chess board.
It uses a graph, represented by an adjacency list, and breadth-first-search algorithm to achieve that.