#include <iostream>
#include <vector>
using namespace std;
void Swap(int &a,int &b)
{
int tmp = a;
a = b;
b = tmp;
}
void Show(vector<int> & vec)
{
vector<int> :: iterator it = vec.begin();
for(it;it != vec.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
}
void SelcetSort(vector<int> & vec)//时间复杂度 O(n2) 空间复杂度 O(1) 稳定
{
int len = vec.size();
if(len < 2)return ;
int mix = 0;
for(int i = 0;i < len-1;++i)
{
mix = i;
for(int j = i;j < len;++j)
{
if(vec[mix] > vec[j])
{
mix = j;
}
}
Swap(vec[mix],vec[i]);
}
}
int main()
{
int arr[10] = {10,9,8,7,6,4,5,2,1,3};
vector<int> vec(arr,arr+10);
Show(vec);
SelcetSort(vec);
Show(vec);
}
选择排序
最新推荐文章于 2024-07-12 16:42:24 发布