#includeusing namespace std;typedef int ElemType;/直接插入排序void InsertSort ( ElemType A, int n )int i, j;ElemType x;for ( i=1; i=0; j- ) /从第i-1个开始往前找插入点i
直接插入排序ppt课件Tag内容描述:
1、n-1使之为一个堆void Sift(ElemType A, int n, int i) / 调整Ain-1成为一个堆(它的左右子树已是一个堆)ElemType x=Ai; int j = 2 * i + 1; / j为i的左孩子while (j =1;i-)x = A0; /第个元素与第i个元素交换A0 = Ai;Ai = x; Sift(A, i, 0); /调整A0i-1使之为一个堆 /冒泡排序void BubbleSort( ElemType A, int n )int i, j, flag; /flag为交换标记ElemType x;for (i=1; i=i; j-) /第i 趟if ( Aj=x) j-; /从右到左 if ( i Aj;cout“排序前为:“endl;for(i=0;iN;i+)coutAiendl;cout“直接插入排序:“endl;InsertSort (A, N );for(i=0;iN;i+)coutAiendl;运 /运。
2、xj;xj=xj+1; /*相邻两数交换*/xj+1=m;k=0; /*本趟发生了数据交换*/if(k=1)break;之后运行主程序main() /*程序由此开始*/int aN+1,i;for(i=1;ixj+1) /*若前面的数大于后面的数则交换*/m=xj;xj=xj+1; /*相邻两数交换*/xj+1=m; k=0; /*本趟发生数据交换*/if(k=1)break; /*若第 i 趟未发生数据交换,则排序结束*/main() /*程序由此开始*/int aN+1,i;for(i=1;i=N;i+)scanf(“%d“, /*输入 N 个数*/bustor(a,N); /*调入冒泡排序函数*/for(i=1;i=N;i+) printf(“%4d“, /*输入排序后的序列*/ /*程序到此结束*/经检查发现 void bust。
3、 includestdio h define MAXSIZE 20 define LT a b a b typedef int KeyType typedef struct KeyType key RedType typedef struct RedType r MAXSIZE 1 int length SqList void InsertSort SqList L int i j k for i。
4、t L;L.r = new RedTypen+1;L.length=n;for(int i=1;i=0) x=x1;else x=x1+M;return x;void InsertSort(SqList i#include#includeconst int n=100000;typedef structint key;RedType;typedef struct RedType *r; /rn+1;int length;SqList;int random();void InsertSort(SqList void main() SqList L;L.r = new RedTypen+1;L.length=n;for(int i=1;i=0) x=x1;else x=x1+M;return x;void InsertSort(SqList /对顺序表L作折半插入排序。
for(int i=2;i=high+1;-j)L.rj+1=L.rj; /记录后移L.rhigh+1=L.r0; /插入 /for/Ins。
5、nt a, int len)for(int i=0;ilen;i+)/循环打印数组的每个元素coutai“;coutendl;int main()int a=7,8,3,4,6,9,5,1,2;cout“before insert sort: “;print_arry(a,9);insert_sort(a,9);/进行直接插入排序cout“afert insert sort: “;print_arry(a,9);return 0;。
6、0 1 2 3 4 5 6 7 8,49,38,65,97,76,13,27,49,i=2,直接插入排序算法演示,void InsertSort(SqList /Ri插入到正确位置 ,0 1 2 3 4 5 6 7 8,49,38,65,97,76,13,27,49,i=2,38,直接插入排序算法演示,void InsertSort(SqList /Ri插入到正确位置 ,0 1 2 3 4 5 6 7 8,49,49,65,97,76,13,27,49,i=2,38,直接插入排序算法演示,void InsertSort(SqList /Ri插入到正确位置 ,0 1 2 3 4 5 6 。
7、8.2 直接插入排序,数据结构,计算机科学系,教学内容: 1、排序的基本概念 2、直接插入排序算法的基本思想 3、直接插入排序算法实现 4、直接插入排序算法性能分析,教学重点:直接插入排序算法思想,教学难点:算法实现及性能分析,教学过程,8.2.1 排序概念,排序,无序数据,有序数据,排序算法主要有: 直接插入排序、希尔排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序等。
,8.2.2 。