Posted in C/C++ 我抢沙发
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int find_smallest(int *array, int left, int right)  
{
	int smallest = left;
	while(left<=right)
	{
		if(array[left] < array[smallest])
			smallest = left;
		left++;
	}
	return smallest;
}
 
void select_sort(int *array, int left, int right)
{
	int i = left;
	for(; i<right; i++)
	{
		int index = find_smallest(array, i, right); //找出最小的元素的下标
		myswap(array+i, array+index); //交换
	}
}
August 23, 2010