选择排序
特点:原址排序,比较排序,时间复杂度O(n^2)
//
// Created by 许加权 on 2021/6/19.
//
#include <iostream>
void selection_sort(int *arr,int start,int end)
{
for (int i = start + 1; i < end+1; ++i) {
for (int j = i; j < end+1; ++j) {
if(arr[j]<arr[i-1])
{
int temp = arr[j];
arr[j] = arr[i-1];
arr[i-1] = temp;
}
}
}
}
void show(int *arr,int length)
{
for(int i=0;i<length;i++)
{
std::cout<<arr[i]<<" ";
}
std::cout<<std::endl;
}
int main()
{
int arr[] = {1,4,6,9,2,5,10,3,7};
show(arr,sizeof(arr)/sizeof (int));
selection_sort(arr,0,sizeof(arr)/sizeof (int)-1);
show(arr,sizeof(arr)/sizeof (int));
return 0;
}