2022年线性表+课后习题答案 .pdf
《2022年线性表+课后习题答案 .pdf》由会员分享,可在线阅读,更多相关《2022年线性表+课后习题答案 .pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 2 章线性表1选择题(1)一个向量第一个元素的存储地址是100,每个元素的长度为2,则第 5 个元素的地址是()。A110 B108C100 D120(2)在 n 个结点的顺序表中,算法的时间复杂度是O(1)的操作是()。A 访问第 i 个结点(1in)和求第i 个结点的直接前驱(2in)B在第 i 个结点后插入一个新结点(1in)C删除第i 个结点(1i n)D将 n 个结点从小到大排序(3)向一个有 127 个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动的元素个数为()。A8 B63.5C63 D7(4)链接存储的存储结构所占存储空间()。A 分两部分,一部分存放结点值,
2、另一部分存放表示结点间关系的指针B只有一部分,存放结点值C只有一部分,存储表示结点间关系的指针D分两部分,一部分存放结点值,另一部分存放结点所占单元数(5)线性表若采用链式存储结构时,要求内存中可用存储单元的地址()。A必须是连续的B部分地址必须是连续的C一定是不连续的D连续或不连续都可以(6)线性表在()情况下适用于使用链式结构实现。A需经常修改中的结点值需不断对进行删除插入C中含有大量的结点中结点结构复杂(7)单链表的存储密度()。A大于 1 B等于 1 C小于 1 D不能确定(8)将两个各有n 个元素的有序表归并成一个有序表,其最少的比较次数是()。A n B2n-1 C2n Dn-1(
3、9)在一个长度为n的顺序表中,在第i 个元素(1in+1)之前插入一个新元素时须向后移动()个元素。A n-i Bn-i+1 C n-i-1 Di(10)线性表 L=(a1,a2,an),下列说法正确的是()。A每个元素都有一个直接前驱和一个直接后继B线性表中至少有一个元素C表中诸元素的排列必须是由小到大或由大到小D除第一个和最后一个元素外,其余每个元素都有一个且仅有一个直接前驱和直接后继。(11)若指定有 n 个元素的向量,则建立一个有序单链表的时间复杂性的量级是()。A O(1)BO(n)CO(n2)DO(nlog2n)(12)以下说法错误的是()。名师资料总结-精品资料欢迎下载-名师精心
4、整理-第 1 页,共 6 页 -A求表长、定位这两种运算在采用顺序存储结构时实现的效率不比采用链式存储结构时实现的效率低B顺序存储的线性表可以随机存取C由于顺序存储要求连续的存储区域,所以在存储管理上不够灵活D线性表的链式存储结构优于顺序存储结构(13)在单链表中,要将s所指结点插入到p 所指结点之后,其语句应为()。A s-next=p+1;p-next=s;B(*p).next=s;(*s).next=(*p).next;Cs-next=p-next;p-next=s-next;D s-next=p-next;p-next=s;(14)在双向链表存储结构中,删除p 所指的结点时须修改指针(
5、)。A p-next-prior=p-prior;p-prior-next=p-next;B p-next=p-next-next;p-next-prior=p;C p-prior-next=p;p-prior=p-prior-prior;D p-prior=p-next-next;p-next=p-prior-prior;(15)在双向循环链表中,在p 指针所指的结点后插入q 所指向的新结点,其修改指针的操作是()。A p-next=q;q-prior=p;p-next-prior=q;q-next=q;B p-next=q;p-next-prior=q;q-prior=p;q-next=p
6、-next;C q-prior=p;q-next=p-next;p-next-prior=q;p-next=q;D q-prior=p;q-next=p-next;p-next=q;p-next-prior=q;2算法设计题(1)将两个递增的有序链表合并为一个递增的有序链表。要求结果链表仍使用原来两个链表的存储空间,不另外占用其它的存储空间。表中不允许有重复的数据。void MergeList_L(LinkList&La,LinkList&Lb,LinkList&Lc)pa=La-next;pb=Lb-next;Lc=pc=La;/用 La 的头结点作为Lc 的头结点 while(pa&pb)
7、if(pa-datadata)pc-next=pa;pc=pa;pa=pa-next;else if(pa-datapb-data)pc-next=pb;pc=pb;pb=pb-next;else/相等时取La 的元素,删除Lb 的元素 pc-next=pa;pc=pa;pa=pa-next;q=pb-next;delete pb;pb=q;pc-next=pa?pa:pb;/插入剩余段 delete Lb;/释放 Lb 的头结点 (2)将两个非递减的有序链表合并为一个非递增的有序链表。要求结果链表仍使用原来两个链表的存储空间,不另外占用其它的存储空间。表中允许有重复的数据。void unio
8、n(LinkList&La,LinkList&Lb,LinkList&Lc,)pa=La-next;pb=Lb-next;/初始化 Lc=pc=La;/用 La 的头结点作为Lc 的头结点 Lc-next=NULL;while(pa|pb)名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 6 页 -if (!pa)q=pb;pb=pb-next;else if (!pb)q=pa;pa=pa-next;else if(pa-data data)q=pa;pa=pa-next;else q=pb;pb=pb-next;q-next=Lc-next;Lc-next=q;/插入 dele
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年线性表+课后习题答案 2022 线性 课后 习题 答案
限制150内