Bored by the academic approach of most data structures and algorithms courses? This is for you! You’ll learn to solve algorithms and analyze space and time complexity in both an interview setting and in your day-to-day development. Following along with the course, you’ll practice algorithms with common interview questions using a handful of algorithm techniques. Take a practical look at recursion and learn to optimize your solutions using divide-and-conquer. Implement merge sort and quicksort and understand tradeoffs of both approaches. Plus, get started with dynamic programming and memoization!