插入排序错误解析
今天在看麻神理工学院的《算法导论》的公开课,其中第一课中列举了一个例子就是插入排序,想着好久都没写过了就尝试写一下,其中出了写错误,在此写出来,以防后面再犯错。
程序是用windows下的gcc编译的。
错误代码:
#include "stdio.h"#define LENG 10int main(){int a[LENG]={4,1,3,7,6,0,8,2,9,5};int i=0;for (i=1; i<LENG; i++){int j=i-1,temp=a[i];while (j>=0 && a[j]>a[i]){a[j+1]=a[j];j--;}a[j+1]=a[i];}for (i=0; i<LENG; i++){printf("%d\t",a[i]);}return 0;}
#include "stdio.h"#define LENG 10int main(){int a[LENG]={4,1,3,7,6,0,8,2,9,5};int i=0;for (i=1; i<LENG; i++){int j=i-1,temp=a[i];while (j>=0 && a[j]>temp){a[j+1]=a[j];j--;}a[j+1]=temp;}for (i=0; i<LENG; i++){printf("%d\t",a[i]);}return 0;}1 楼 greatghoul 2011-07-28 楼主说的在理,顶一个。 2 楼 greatghoul 2011-07-28 引用麻神理工学院的《算法导论》的公开课