基本思想
选择排序属于选择类排序。排序过程如下:首先对位置0~N的数据从左到右取出最小(大)的,放在N位置上;之后对位置0~N-1的数据从左到右取出最小(大)的,放在N-1位置上;以此类推。
时间复杂度
O(n^2)
实例
对于一个int数组,请编写一个选择排序算法,对数组元素排序。
给定一个int数组A及数组的大小n,请返回排序后的数组。
测试样例:
[1,2,3,5,2,3],6
[1,2,2,3,3,5]
public int[] bubbleSort(int[] A, int n) {
for (int i = 0; i < n; i++) {
int min = i;
for (int j = i + 1; j < n; j++) {
if(A[j] < A[min]) min = j;
}
if (A[min] < A[i]) {
int temp = A[i];
A[i] = A[min];
A[min] = temp;
}
}
return A;
}