选择排序C++实现及运行结果
void SelectSort(int arr[],int len)
{
if (arr == NULL)
return;
int i = 0;
for (int i; i <len; i++)
{
int j = i + 1;
int temp = i;
for (int j; j <len; j++)
{
if (arr[j] < arr[temp])
{
temp = j;
}
}
if (temp!=i)
{
swap(arr[temp], arr[i]);
}
}
}
int main()
{
int arr[10] = { 9, 5, 3, 4, 7, 6, 8, 2, 1, 0 };
int len = sizeof(arr) / sizeof(arr[0]);
SelectSort(arr, len);//arr传入之后会退化成指针,必须将数组大小len作为函数参数传入
for(int i=0;i<sizeof(arr)/ sizeof(arr[0]);i++)
{
cout<<arr[i]<<" ";
}
return 0;
}
运行结果:
9 5 3 4 7 6 8 2 1 0