Scans the entire unsorted region to find the minimum element, then swaps it with the first unsorted element, repeating until the array is sorted.
At most one swap per pass, the theoretical minimum among O(n²) sorts, making it the best choice when memory writes are far more expensive than reads.