Quick sort sorts in place by picking a pivot and partitioning smaller values to its left and larger to its right. It is O(n log n) on average and usually fast in practice because it uses no extra array. The partition step also powers quickselect, which finds the k-th smallest element in O(n) average time. Avoid a fixed pivot on already sorted data, since that hits the O(n²) worst case, and use merge sort when stability matters.