CLRS 2.1-2 :
重写过程insertion-sort,使之按非升序排序。
算法思想:
模仿书中的代码即可,送分题。
#include <iostream>
using namespace std;
#define LEN 17
//最坏的情况O(n2)
int main()
{
int* a = new int[LEN];
for(int i = 0; i < LEN; i++)
a[i] = i - 5;
int temp = a[0];
for(int i = 1; i < LEN; i++)
{
int j = i;
int key = a[i];
while(j > 0 && key > a[j-1])
{
a[j] = a[j-1];
j--;
}
a[j] = key;
}
for(int i = 0; i < LEN; i++)
cout<<a[i]<<endl;
delete[] a;
return 0;
}