配列の値を入れ替える式が理解できませんでした。
numbers[indexMin], numbers[i] = numbers[i], numbers[indexMin]
この式はnumbers[indexMin]とnumbers[i]を入れ替えています。
値を入れ替える方法は
x = numbers[indexMin]
numbers[indexMin] = numbers[i]
numbers[i] = x
上記のような形しか思いつきませんでしたが、
このような方法があると初めて知りました。