#include <iostream>
using namespace std;
template<class T>
void insert_sort(T *arr, int len)
{
T tmp;
int curPos;
for(int i = 1; i < len; ++ i)
{
tmp = arr[i];
curPos = i - 1;
while(curPos > -1 && tmp < arr[curPos])
{
arr[curPos + 1] = arr[curPos];
curPos --;
}
arr[curPos + 1] = tmp;
}
}
int main()
{
int size;
cin >> size;
int *arr = new int[size];
for(int i = 0; i < size; ++ i)
cin >> *(arr+i);
insert_sort(arr, size);
for(int i = 0; i < size; ++ i)
cout << *(arr + i) << " ";
cout << endl;
}
常用排序算法——插入排序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.