资源描述:
《数据结构作业(C语言版)习题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数据结构作业(C语言版)习题1.4,试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。复数:ADTTriplet{D={r,i
2、r,i为实数}R={}InitComplex(&C,re,im)}ADTComplex有理数:ADTTriplet{D={c1,c2,c3
3、c1,c2,c3∈Z,c3≠0};R={};C3=c1/c2;}ADTTriplet1.9假设n为2的乘幂,并且n>2,试求下列算法的时间复杂度及变量count的值(以n的函数形式表示)。intTime(in
4、tn){count=0;x=2;while(x<n/2){x*=2;count++;}return(count)}//Time解:o(log2n)count=log2n21.16试写一算法,自大至小依次输出顺序读入的三个整数X,Y和Z的值。Voidbubble-sort(inta[X,Y,Z],inti){for(i=n-1,change=TRUE;i≥&&change;--i){change=FALSE;for(j=0;ja[j+1]){a[j+1]←→a[j]change=TRUE;}}}//bubble-sort解:intma
5、x3(intx,inty,intz){if(x>y)if(x>z)returnx;elsereturnz;elseif(y>z)returny;elsereturnz;}2.1描述以下三个概念的区别:头指针,头结点,首元结点(第一个元素结点)。头结点:在单链表的第一个结点之前附设一个结点,即称之为头结点头指针:链表中第一个结点的存储位置即称之为头指针首元结点:首元结点是指链表中存储线性表中第一个数据元素a1的结点2.2填空题(1)在顺序表中插入或删除一个元素,需要平均移动表中一半元素,具体移动的元素个数与表长和该元素在表中的位置有关。(2)顺序表中逻辑上相邻的元
6、素的物理位置必定相邻。单链表中逻辑上相邻的元素的物理位置不一定相邻。(3)在单链表中,除了首元结点外,任一结点的存储位置由其直接前驱结点的链域的性指示。(40在单链表中设置头结点的作用是插入或删除首元素不必进行特殊处理。2.4对以下单链表分别执行下列各程序段,并画出结果示意图。2573864(1)Q=P->next;(2)L=P->next;(3)R->data=P->data;(4)R->data=P->next->data;(5)P->next->next->next->data=P->data;(6)T=P;While(T!=NULL){T->data=T
7、->data*2;T=t->next;}(7)T=PWhile(T->next!=NULL){T->data=T->data*2;T=T->next;}2.5画出执行下列各行语句后各指针及链表的示意图。L=(LinkList)malloc(sizeof(LNode));P=LFor(i=1;i<=4;i++){p->next=(LinkList)malloc(sizeof(LNode));P=P->next;p->data=i*2-1;}P->next=NULL;for(i=4;i>=1;i--;)Ins-LinkList(L,i+1,i*2);for(i=1;
8、i<=3;i++)Del-LinkList(L,i);解:2.6已知L是无表头结点的单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适的语句序列。A.在P结点后S结点的语句序列是:(4)(1)B.在P结点前S结点的语句序列是:(7)(11)(8)(4)(1)C.在表首S结点的语句序列是:(5)(12)D.在表尾S结点的语句序列是:(9)(1)(6)(1)P->next=S;(2)P->next=P->next->next;(3)P->next=S->next;(4)S->next=P->next;(5)S->next==L;(6)S->
9、next=NULL;(7)Q=P(8)while(P->next!=Q)P=P->next;(9)while(P->next!=NULL)P=P->next;(10)P=Q(11)P=L;(12)L=S;(13)L=P;2.7a.(11)(3)(14)b.(10)(12)(8)(11)(3)(14)c.(10)(12)(7)(3)(14)d.(12)(11)(3)(14)e(9)(11)(3)(14)2.8a.(7)(12)(6)(3)b.(8)(13)(5)(4)c.(15)(1)(11)(18)d.(16)(2)(10)(18)e.(9)(14)(17)2.
10、10StatusDele