推荐慕课网,刘宇波老师《算法与数据结构》
链接:http://coding.imooc.com/class/71.html
insertionSort 课堂笔记
#include <iostream>
using namespace std;
void swap(int &a,int &b)
{
int t = a;
a = b;
b = t;
}
template<typename T>
void insertionSort(T arr[],int n)
{
for(int i = 1;i < n;i++)
for(int j = i;j>0 && arr[j] < arr[j-1];j--)
swap(arr[j],arr[j-1]);
}
int main(){
int arr[] = {9,8,7,6,5,4,3,2,1};
int n = sizeof(arr)/sizeof(arr[0]);
insertionSort(arr,n);
for(int i = 0;i<n;i++)
printf("%d ",arr[i]);
printf("\n");
return 0;
}
/* insertion optimize(优化) */
template<typename T>
void insertionSort2(T arr[],int n){
for(int i = 1;i < n;i++){
T e = arr[i];
int j;
for(j = i;j>0 && arr[j-1]>e;j--)
arr[j] = arr[j-1];
arr[j] = e;
}
}
insertionSort
最新推荐文章于 2024-08-02 12:07:49 发布