1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,演示,1,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3
2、4 5 6 7 8,49,38,65,97,76,13,27,49,i=2,i,2,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7
3、 8,49,38,65,97,76,13,27,49,i=2,i,3,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,49
4、38,65,97,76,13,27,49,i=2,38,i,4,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,49,4
5、9,65,97,76,13,27,49,i=2,38,i,5,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,49,49,
6、65,97,76,13,27,49,i=2,38,i,j,6,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,
7、65,97,76,13,27,49,i=2,38,i,j,7,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,
8、65,97,76,13,27,49,i=3,38,i,8,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65
9、97,76,13,27,49,i=3,38,i,9,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,
10、76,13,27,49,i=4,38,i,10,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,76,
11、13,27,49,i=4,38,i,11,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,76,13,
12、27,49,i=5,38,i,12,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,76,13,27,
13、49,i=5,38,i,13,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,76,13,27,49,
14、i=5,76,i,14,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,97,13,27,49,i=5
15、76,i,15,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,97,97,13,27,49,i=5,76
16、i,j,16,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,97,13,27,49,i=5,76,
17、i,j,17,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,97,13,27,49,i=6,76,i
18、18,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,97,13,27,49,i=6,76,i,19
19、直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,97,13,27,49,i=6,13,i,20,直接
20、插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,97,97,27,49,i=6,13,i,21,直接插入排
21、序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,97,97,27,49,i=6,13,j,i,22,直接插入排序
22、算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,76,76,97,27,49,i=6,13,j,i,23,直接插入排序算
23、法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,65,65,76,97,27,49,i=6,13,j,i,24,直接插入排序算法
24、演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,49,49,65,76,97,27,49,i=6,13,j,i,25,直接插入排序算法演
25、示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,38,38,49,65,76,97,27,49,i=6,13,j,i,26,直接插入排序算法演示
26、void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,97,27,49,i=6,13,j,i,27,直接插入排序算法演示,
27、void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,97,27,49,i=7,13,i,28,直接插入排序算法演示,voi
28、d InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,97,27,49,i=7,13,i,29,直接插入排序算法演示,void I
29、nsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,97,27,49,i=7,27,i,30,直接插入排序算法演示,void Inse
30、rtSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,97,97,49,i=7,27,i,31,直接插入排序算法演示,void InsertS
31、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,97,97,49,i=7,27,i,j,32,直接插入排序算法演示,void InsertS
32、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,76,76,97,49,i=7,27,i,j,33,直接插入排序算法演示,void InsertS
33、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,65,65,76,97,49,i=7,27,i,j,34,直接插入排序算法演示,void InsertS
34、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,49,49,65,76,97,49,i=7,27,i,j,35,直接插入排序算法演示,void InsertS
35、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,38,38,49,65,76,97,49,i=7,27,i,j,36,直接插入排序算法演示,void InsertS
36、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,97,49,i=7,27,i,j,37,直接插入排序算法演示,void InsertS
37、ort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,97,49,i=8,27,i,38,直接插入排序算法演示,void InsertSor
38、t(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,97,49,i=8,27,i,39,直接插入排序算法演示,void InsertSort(
39、SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;,/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,97,49,i=8,49,i,40,直接插入排序算法演示,void InsertSort(S
40、qList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,97,97,i=8,49,i,41,直接插入排序算法演示,void InsertSort(SqL
41、ist&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,97,97,i=8,49,i,j,42,直接插入排序算法演示,void InsertSort(SqL
42、ist&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,76,76,97,i=8,49,i,j,43,直接插入排序算法演示,void InsertSort(SqL
43、ist&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,65,65,76,97,i=8,49,i,j,44,直接插入排序算法演示,void InsertSort(SqList&L),/,对顺序表,L,做直接插入排序,for(i=2;i=L.length;+i),if(L.ri.keyL.ri-1.key),/,待排序记录关键字,有序序列最后一个记录关键字,L.r0=L.ri;/,/,待排序记录复制为哨兵,L.ri=L.ri-1;,for(j=i-2;LT(L.r0.key,L.rj.key);-j),/,记录后移,L.rj+1=L.rj;,L.rj+1=L.r0;,/Ri,插入到正确位置,0 1 2 3 4 5 6 7 8,13,27,38,49,49,65,76,97,i=8,49,排序完毕,i,j,45,