百度百科:
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。
代码
public class XuanZe
{
public static void main(String[] args)
{
int[] num = {5, 7, 1, 9, 3};
System.out.println(“排序前:”);
for (int k = 0; k < num.length; k++)
{
System.out.print(num[k] + " ");
}
System.out.println();
System.out.println(“开始排序:”);
for (int i = 0; i < num.length; i++)
{
int min = i;
for (int j = i + 1; j < num.length; j++)
{
if (num[min] > num[j])
{
min = j;
}
}
if (min != i)
{
int x = num[min];
num[min] = num[i];
num[i] = x;
}
for (int j = 0; j < num.length; j++)
{
System.out.print(num[j] + " ");
}
System.out.println();
}
}
}
输出结果:
排序前:
5 7 1 9 3
开始排序:
1 7 5 9 3
1 3 5 9 7
1 3 5 9 7
1 3 5 7 9
1 3 5 7 9
复杂度 n2