算法导论学习 之 插入排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法导论学习 之 插入排序相关的知识,希望对你有一定的参考价值。

刚刚开始系统学习算法导论和c++,每次学习的算法都用c++ 实现一边,加深理解,方便回顾。

先从最简单的插入排序开始吧:

code:

#include<iostream>
#include<vector>
#include<map>
using namespace std;
void Insertion_Sort(int * a,int length)
{
    int i,j,key;
    for(i = 1;i < length;i ++){
        key = a[i];
        j = i - 1;
        while(j >= 0&&a[j] > key){
            a[j + 1] = a[j];
            a[j] = key;
            j --;
        }
    }
}
int main(void)
{
    int a[10];
    int i;
    for(i = 0;i < 10;i ++)
        cin >> a[i];
    Insertion_Sort(a,10);
    
    for(i = 0;i < 10;i ++)
        cout << a[i] << " ";
    cout << endl;
    return 0;
}

 

以上是关于算法导论学习 之 插入排序的主要内容,如果未能解决你的问题,请参考以下文章

算法导论之插入排序和归并排序

算法导论之所有排序算法的Python实现

算法导论学习第一天(插入排序和循环不变式)

算法导论之——插入排序

算法导论 | 循环不变式与插入排序

算法导论学习笔记----插入排序