欢迎来到天天文库
浏览记录
ID:13233651
大小:101.00 KB
页数:12页
时间:2018-07-21
《数据结构期末考试试题及答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据结构期末考试试题及答案一、选择题窗体顶端1.评价一个算法时间性能的主要标准是()。A、算法易于调试B、算法易于理解C、算法的稳定性和正确性D、算法的时间复杂度2.计算机算法具备有输入、输出、()等五个特性。A、可行性、可移植性和可扩充性B、可行性、确定性和有穷性C、确定性、有穷性和稳定性D、易读性、稳定性和安全性3.带头结点的单链表head为空的判定条件是()。A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL4.以下关于线性表的说法不正确的是()。A、线性表中的数据元素可以是数字、字符、
2、记录等不同类型。B、线性表中包含的数据元素个数不是任意的。C、线性表中的每个结点都有且只有一个直接前趋和直接后继。D、存在这样的线性表:表中各结点都没有直接前趋和直接后继。5.在顺序表中,只要知道(),就可在相同时间内求出任一结点的存储地址。A、基地址B、结点大小C、向量大小D、基地址和结点大小6.()运算中,使用顺序表比链表好。A、插入B、删除C、根据序号查找D、根据元素值查找7.一个长度为n的顺序表中,向第i个元素之前插入一个新元素时,需要向后移动()个元素。A、n-iB、n-i+1C、n-i-1D、i8.()适合作为经常在首尾两端操作线性表的存储结构。A、
3、顺序表B、单链表C、循环链表D、双向链表9.栈和队列的共同点是()A、都是先进后出B、都是先进先出C、只允许在端点处插入和删除元素D、没有共同点10.一个队列的入列序列是1234,则队列的输出序列是()。A、4321B、1234C、1432D、324111.队列与一般的线性表的区别在于()。A、数据元素的类型不同B、运算是否受限制C、数据元素的个数不同D、逻辑结构不同12.“假上溢”现象会出现在()中。A、循环队列B、队列C、链队列D、顺序队列窗体底端二、填空题1.数据的逻辑结构被分为集合、线性结构、树形结构和图结构。2.数据的逻辑结构被分为集合、线性结构、树形
4、结构和图状结构。3.下面程序段的时间复杂度是O(n)。i=s=0;while(snext=head。8.已知L是带头结点的非空单链表,且P结点既不是第一个数据结点,也不是最后一个结点,试从下列提供的答案中选择合适的语句序列,实现删除P结
5、点的直接后继结点的语句序列是⑥①⑨。①P->next=P->next->next;②P=P->next->next;③while(P->next!=Q)P=P->next;④while(P->next->next=Q)P=P->next;⑤Q=P;⑥Q=P->next;⑦P=L;⑧L=L->next;⑨free(Q);9.在线性结构中,第一个结点无前驱结点,其余每个结点有且只有1个前驱结点。10.单链表是线性表的链式存储表示。11.栈是限定仅在表尾进行插入或删除操作的线性表。12.在栈顶指针为HS的链栈中,判定栈空的条件是HS=NULL。13.假设以S和X分别表
6、示进栈和退栈操作,则对输入序列a、b、c、d、e进行一系列栈操作SSXSXSSXXX之后,得到的输出序列为bceda。14.设栈S和队列Q的初始状态为空,元素a、b、c、d、e、f依次通过栈S,一个元素出栈后即进入队列Q。若这6个元素出队列的顺序是b、d、c、f、e、a,则栈S的容量至少应该是3。三、算法填空1.已知一个顺序表中的元素按关键字值非递减有序,下列算法删除顺序表中关键字相同的多余元素,使每个关键字不同的元素在表中只保留一个。voidpurge_sq(SqList&la){//删除顺序表la中关键字相同的多余元素,即使操作之后的顺序表中只保留操作之前表
7、中所有按关键字值都不相同的元素k=-1;//k指示新表的表尾for(i=0;i8、9、j>k)//k=-1表明当前考察的是第一个元素la.elem[++k]=la.elem[i];}//forla.length=k+1;//修改表长}//purge_sq2.一个头指针为head的单链表,其中每个结点存放一个整数,以下算法将其拆分为两个单链表head1和he10、ad2,使head1中仅
8、
9、j>k)//k=-1表明当前考察的是第一个元素la.elem[++k]=la.elem[i];}//forla.length=k+1;//修改表长}//purge_sq2.一个头指针为head的单链表,其中每个结点存放一个整数,以下算法将其拆分为两个单链表head1和he
10、ad2,使head1中仅
此文档下载收益归作者所有