选择排序
什么是选择排序
可以简单理解每次从无序数据中每次从中挑选一个最小值,然后排序
int[] data;
for (int i = 0; i < data.length-1; i++) {
for (int j = i + 1; j < data.length; j++)
{
if (data[i] > data[j])// swap if i > j so i will be min value
{
int temp = data[j];
data[j] = data[i];
data[i] = temp;
}
}
}
时间复杂度
n-1+n-2...+0 这个值是(n)*(n-1)/2 ~= n^2;
稳定的
相同值不会交换