- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[PPT模板]数据结构 线性表试题
第2章 线性表2.1
选择题
1.对于线性表最常用的操作是查找指定序号的元素和在末尾插入元素,则选择( )最节省时间
A)顺序表 B)带头结点的双循环链表
C)单链表 D)带尾结点的单循环链表
【答案】A
2.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法时间复杂度为( )(1≤i≤n+1)。
A) O(0) B) O(1) C) O(n) D) O(n2)
【答案】C
3.双向链表中有两个指针域,prior和next,分别指向前驱及后继,设p指向链表中的一个结点,q指向一待插入结点,现要求在p前插入q,则正确的插入为( )
A) p-prior=q; q-next=p; p-prior-next=q; q-prior=p-prior;
B) q-prior=p-prior; p-prior-next=q; q-next=p; p-prior=q-next;
C) q-next=p; p-next=q; p-prior-next=q; q-next=p;
D) p-prior-next=q; q-next=p; q-prior=p-prior; p-prior=q;
【答案】D
4.在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是( )
A)O(nlog2n) B) O(1) C) O(n) D) O(n2)
【答案】C
5. 在一个以 h 为头指针的单循环链中,p 指针指向链尾结点的条件是( )
A)p-next==NULL B) p-next==h
C)p-next-next==h D) p-data==-1
【答案】B
6.对于一个具有n个结点的线性表,建立其单链表的时间复杂度是( )
A)O(n) B) O(1) C)O(nlog2n) D) O(n2)
【答案】A
8.在双向链表存储结构中,删除p所指的结点时须修改指针( )
A)p-prior-next=p-next p-next-prior=p-prior;
B)p-prior=p-prior-prior p-prior-next=p;
C)p-next-prior=p p-next=p-next-next
D)p-next=p-prior-prior p-prior=p-next-next;
【答案】A
9.线性表采用链式存储时,其元素地址( )
A)必须是连续的 B)一定是不连续的
C)部分地址是连续的 D)连续与否均可
【答案】D
2.2 填空题
1.线性表L=(a1,a2,…,an)用数组表示,假定删除表中任一元素的概率相同,则删除一个元素平均需要移动元素的个数是_____________。
【答案】(n-1)/2
2.在单链表中设置头结点的作用是_____________。
【答案】主要是使插入和删除等操作统一,在第一个元素之前插入元素和删除第一个结点不必另作判断。另外,不论链表是否为空,链表头指针不变。
3.线性表的顺序存储是通过_____________来反应元素之间的逻辑关系,而链式存储结构是通过_____________来反应元素之间的逻辑关系。
【答案】(1)数据元素的前后顺序 (2)元素中的指针
4.当对一个线性表经常进行的是存取操作,而很少进行插入和删除操作时,则采用_____________存储结构最节省时间,相反当经常进行插入和删除操作时,则采用_____________存储结构最节省时间。
【答案】(1)顺序 (2)链式
5.对于一个具有n个结点的单链表,在已知的结点*p后插入一个新结点的时间复杂度为_____________,在给定值为x的结点后插入一个新结点的时间复杂度为_____________。
【答案】(1)O(1) (2)O(n)
7. 对于双向链表,在两个结点之间插入一个新结点需修改的指针共_____________个,单链表为________
文档评论(0)