This chapter introduces the divide and conquer algorithm design technique. It covers binary search, merge sort, quicksort, and Strassen's matrix multiplication algorithms. Binary search runs in O(log n) time by dividing the search space in half at each step. Merge sort sorts an array in O(n log n) time by dividing it into single element subarrays and then merging them back together in sorted order. Quicksort selects a pivot element and partitions the array into subarrays containing elements less than or greater than the pivot, then recursively sorts the subarrays. Strassen's matrix multiplication multiplies two n x n matrices in O(n^2.807) time by dividing them into smaller submatrices.