insertion sort

来源:互联网 发布:杭州电信网络缴费电话 编辑:程序博客网 时间:2024/05/16 14:37

MITOCW lesson 1 insertion sort

pseudocode:

INSERTION-SORT(A)1  for j  2 to length[A]2       do key  A[j]3           Insert A[j] into the sorted sequence A[1  j - 1].4          i  j - 15          while i > 0 and A[i] > key6              do A[i + 1]  A[i]7                 i  i - 18          A[i + 1]  key
Reference: Introduction to Algorithm


#include <iostream>using namespace std;int main(){    int j=0;    int a[]= {2,51,23,45,65,234,67,1,24,56,43,42};    int num=sizeof(a)/sizeof(j);    cout <<num<<endl;    int key=0;    int mid=0;    for(j=1; j<num; j++)    {        key=a[j];        for(int k=j-1; k>=0; k--)        {            if(key<a[k])            {                a[k+1]=a[k];                a[k]=key;                //每次排序后的结果                for(mid=0; mid<num; mid++)                {                    cout<<a[mid]<<"  ";                }                cout<<endl;            }            else            {                break;            }        }    }    for(j=0; j<num; j++)    {        cout<<a[j ]<<"  ";    }    return 0;}



原创粉丝点击