Scala projects Design, learning, and exercises Boundaries: Designing a functional core with an imperative shell (adapted from Gary Bernhardt's 2012 talk) Leetcode problems All problems solved and explanations found here Data Structures Linked Lists Singly Linked List Trees Binary Tree Scala Collections (Simplified implementations of the scala.collections library) Queue Algorithms Arrays Find adjacent pairs which sum to n Find the missing number in a range Remove duplicates Reverse array iteratively Reverse array recursively Swap items Left rotation Right rotation Bribing queue Sequences All Permutations of a List Fibonacci with tail recursion Fibonacci with streams Sorting Quicksort (Simplified) Quicksort MergeSort