- Quicksort is a simple and fast sorting algorithm that can sort arrays "in place" without using extra space.
- It works by recursively partitioning the array around a pivot value, sorting the left and right subarrays, and then combining them.
- On average, it has a runtime of O(n log n) but in the worst case of an already sorted array it can have a quadratic runtime of O(n^2) like bubble sort. However, its randomized choice of pivots means it rarely encounters worst-case inputs in practice.