文档详情

浙江大学远程教育学院《数据结构与算法》课程离线作业答案.doc

发布:2017-11-27约3.72千字共5页下载文档
文本预览下载声明
浙江大学远程教育学院 《数据结构与算法》课程离线作业答案 一、填空题: 【1,1,2】线性结构中元素之间存在一对一关系,树形结构中元素之间存在     关系,图形结构中元素之间存在    关系。 【2,1,2】为了最快地存取数据元素,物理结构宜采用 结构。 【,1,2】存储结构可根据数据元素在机器中的位置是否一定连续分为 __, ___。 【,1,】度量算法效率可通过 __来进行。 【,1,】设n 为正整数,下面程序段中前置以记号@的语句的频度是 n(n+1)/2 。 for (i=0; in; i++){ for (j=0; jn; j++) if (i+j==n-1) @ a[i][j]=0; } 【,1,】设n 为正整数,试确定下列各程序段中前置以记号@的语句的频度: (1) i=1; k=0; while (i=n-1){ i++; @ k+=10 * i; // 语句的频度是______________________。 } (2) k=0; for (i=1;i=n;i++){ for (j=i; j=n;j++) @ k++; // 语句的频度是______________________。 } 【,3,】线性表(a1,a2,…,an)有两种存储结构: 顺序存储结构和链式存储结构,请就这两种存储结构完成下列填充: ___ 存储密度较大;____存储利用率较高;____可以随机存取;_____不可以随机存取; ____插入和删除操作比较方便。 【,3,2】从一个长度为n的顺序表中删除第i个元素(1≤i≤n)时,需向前移动 n-i 个元素。 【,3,】带头结点的单链表Head为空的条件是____ ______。 【1,3,】在一个单链表中p所指结点(p所指不是最后结点)之后插入一个由指针s所指结点,应执行s-next=__ ___;和p-next=___ _____的操作。 【,3,】在一个单链表中删除p所指结点时,应执行以下操作: q= p-next; p-data= p-next-data; p-next= _ ; free(q); 【2,3,】带头结点的单循环链表Head的判空条件是__ Head Head;___; 不带头结点的单循环链表的判空条件是___ Head__。 【,3,3】已知L是带表头结点的非空单链表, 且P结点既然不首元结点,也不是尾元结点,试从下列提供的答案中选择合适的语句序列。 a. 删除P结点的直接前驱结点的语句序列是________________________________。 b. 删除结点P的语句序列是_____________________________。 c. 删除尾元结点的语句序列是__________________________。 (1) P = P-next; (2) P-next = P; (3) P-next = P-next -next; (4) P = P-next -next; (5) while (P != NULL) P = P-next; (6) while (Q-next != NULL){P = Q; Q = Q-next}; (7) while (P-next != Q) P = P-next; (8) while (P-next-next != Q) P = P-next; (9) while (P-next-next != NULL) P = P-next; (10) Q = P; (11) Q = P-next; (12) P = L; (13) L = L-next; (14) free (Q); 【,3,】对一个栈,给定输入的顺序是A、B、C,则全部不可能的输出序列有 。 【,3,】.在栈顶指针为HS的链栈中,判定栈空的条件是        。 【,3,】下列程序把十进制数转换为十六进制数,请填写合适的语句成分。(每空2分) void conversion10_16() { InitStack(s); scanf(“%d”,N); while(N){ __________________ ___ ; N = N/16; } while(!StackEmpty(s)){ _______Pop(s, e)______________ ; if(e=9)pr
显示全部
相似文档