我一直不提倡去死记算法,只要理解了算法的思想才可以真正掌握
在选择排序中,数字列表可以分为两个子列表(已排序的和未排序的)假想他们之间有一个墙进行隔开,每次从墙右边搜索最小元素按顺序赋值要排序的队列。最后左边最终会是全部排序好的元素。顾名思义选择排序的关键就是搜索最小元素的索引
后面吧这句话用自己的语言翻译下就显得简单多了
public static void main(String[] args)
{
int[] a = { 40, 52, 8, 63, 98, 5, 35 };
for (int i = 0; i < a.length; i++) {
int minIndex = i;
for (int j = i; j < a.length; j++) {
if (a[j] < a[minIndex]) {
minIndex = j;
}
}
int temp = a[i];
a[i] = a[minIndex];
a[minIndex] = temp;
}
}