欢迎来到天天文库
浏览记录
ID:2468380
大小:91.50 KB
页数:17页
时间:2017-11-16
《数据结构与算法练习题练习1-3题目答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一章概论一、选择题1、研究数据结构就是研究(D)。A.数据的逻辑结构B.数据的存储结构C.数据的逻辑结构和存储结构D.数据的逻辑结构、存储结构及其基本操作2、算法分析的两个主要方面是(A)。A.空间复杂度和时间复杂度B.正确性和简单性C.可读性和文档性D.数据复杂性和程序复杂性3、具有线性结构的数据结构是(D)。A.图B.树C.广义表D.栈4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、(B)等5个特性。A.可执行性、可移植性和可扩充性B.可执行性、有穷性和确定性C
2、.确定性、有穷性和稳定性D.易读性、稳定性和确定性5、下面程序段的时间复杂度是(C)。for(i=0;i3、复杂度为(C)。i=1;while(i<=n)i=i*3;A.O(n)B.O(3n)C.O(log3n)D.O(n3)9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的(B)和运算等的学科。A.结构B.关系C.运算D.算法10、下面程序段的时间复杂度是(C)。i=s=0;while(s4、储结构C.数据项、数据元素和数据类型D.数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是(A)。A.正确性算法应能正确地实现预定的功能B.易读性算法应易于阅读和理解,以便调试、修改和扩充C.健壮性当环境发生变化时,算法能适当地做出反应或进行处理,不会产生不需要的运行结果D.高效性即达到所需要的时间性能13、下列程序段的时间复杂度为(B)。x=n;y=0;while(x>=(y+1)*(y+1))y=y+1;A.O(n)B.C.O(15、)D.O(n2)二、填空题1、程序段“i=1;while(i<=n)i=i*2;”的时间复杂度为O(log2n)。2、数据结构的四种基本类型中,树形结构的元素是一对多关系。三、综合题1、将数量级O(1),O(N),O(N2),O(N3),O(NLOG2N),O(LOG2N),O(2N)按增长率由小到大排序。答案:O(1)6、的时间复杂度(C)。A.O(log2n)B.O(1)C.O(n)D.O(n2)2、若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用(A)存储方式最节省时间。A.顺序表B.单链表C.双链表D.单循环链表3、具有线性结构的数据结构是(D)。A.图B.树C.广义表D.栈4、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动(B)个元素。A.n-iB.n-i+1C.n-i-1D.i5、非空的循环单链表head的尾结点p满足(A)。A.p->next==head7、B.p->next==NULLC.p==NULLD.p==head6、链表不具有的特点是(A)。A.可随机访问任一元素 B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表长度成正比7、在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是(C)。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->n8、ext;C.q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;D.q->next=p->next;q->prior=p;p->next=q;p->next=q;8、线性表采用链式存储时,结点的存储地址(C)。A.必须是连续的B.必须是不连续的C.连续与否均可D.和头结点的存储地址相连续9、在一个长度为n的顺序表中删除第i个元素,需要向前移动(A)个元素。A.n-iB.n-i+1C.n-i-1D.i+110、线性表是n个(C)的有限序列。A
3、复杂度为(C)。i=1;while(i<=n)i=i*3;A.O(n)B.O(3n)C.O(log3n)D.O(n3)9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的(B)和运算等的学科。A.结构B.关系C.运算D.算法10、下面程序段的时间复杂度是(C)。i=s=0;while(s4、储结构C.数据项、数据元素和数据类型D.数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是(A)。A.正确性算法应能正确地实现预定的功能B.易读性算法应易于阅读和理解,以便调试、修改和扩充C.健壮性当环境发生变化时,算法能适当地做出反应或进行处理,不会产生不需要的运行结果D.高效性即达到所需要的时间性能13、下列程序段的时间复杂度为(B)。x=n;y=0;while(x>=(y+1)*(y+1))y=y+1;A.O(n)B.C.O(15、)D.O(n2)二、填空题1、程序段“i=1;while(i<=n)i=i*2;”的时间复杂度为O(log2n)。2、数据结构的四种基本类型中,树形结构的元素是一对多关系。三、综合题1、将数量级O(1),O(N),O(N2),O(N3),O(NLOG2N),O(LOG2N),O(2N)按增长率由小到大排序。答案:O(1)6、的时间复杂度(C)。A.O(log2n)B.O(1)C.O(n)D.O(n2)2、若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用(A)存储方式最节省时间。A.顺序表B.单链表C.双链表D.单循环链表3、具有线性结构的数据结构是(D)。A.图B.树C.广义表D.栈4、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动(B)个元素。A.n-iB.n-i+1C.n-i-1D.i5、非空的循环单链表head的尾结点p满足(A)。A.p->next==head7、B.p->next==NULLC.p==NULLD.p==head6、链表不具有的特点是(A)。A.可随机访问任一元素 B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表长度成正比7、在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是(C)。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->n8、ext;C.q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;D.q->next=p->next;q->prior=p;p->next=q;p->next=q;8、线性表采用链式存储时,结点的存储地址(C)。A.必须是连续的B.必须是不连续的C.连续与否均可D.和头结点的存储地址相连续9、在一个长度为n的顺序表中删除第i个元素,需要向前移动(A)个元素。A.n-iB.n-i+1C.n-i-1D.i+110、线性表是n个(C)的有限序列。A
4、储结构C.数据项、数据元素和数据类型D.数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是(A)。A.正确性算法应能正确地实现预定的功能B.易读性算法应易于阅读和理解,以便调试、修改和扩充C.健壮性当环境发生变化时,算法能适当地做出反应或进行处理,不会产生不需要的运行结果D.高效性即达到所需要的时间性能13、下列程序段的时间复杂度为(B)。x=n;y=0;while(x>=(y+1)*(y+1))y=y+1;A.O(n)B.C.O(1
5、)D.O(n2)二、填空题1、程序段“i=1;while(i<=n)i=i*2;”的时间复杂度为O(log2n)。2、数据结构的四种基本类型中,树形结构的元素是一对多关系。三、综合题1、将数量级O(1),O(N),O(N2),O(N3),O(NLOG2N),O(LOG2N),O(2N)按增长率由小到大排序。答案:O(1)6、的时间复杂度(C)。A.O(log2n)B.O(1)C.O(n)D.O(n2)2、若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用(A)存储方式最节省时间。A.顺序表B.单链表C.双链表D.单循环链表3、具有线性结构的数据结构是(D)。A.图B.树C.广义表D.栈4、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动(B)个元素。A.n-iB.n-i+1C.n-i-1D.i5、非空的循环单链表head的尾结点p满足(A)。A.p->next==head7、B.p->next==NULLC.p==NULLD.p==head6、链表不具有的特点是(A)。A.可随机访问任一元素 B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表长度成正比7、在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是(C)。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->n8、ext;C.q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;D.q->next=p->next;q->prior=p;p->next=q;p->next=q;8、线性表采用链式存储时,结点的存储地址(C)。A.必须是连续的B.必须是不连续的C.连续与否均可D.和头结点的存储地址相连续9、在一个长度为n的顺序表中删除第i个元素,需要向前移动(A)个元素。A.n-iB.n-i+1C.n-i-1D.i+110、线性表是n个(C)的有限序列。A
6、的时间复杂度(C)。A.O(log2n)B.O(1)C.O(n)D.O(n2)2、若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用(A)存储方式最节省时间。A.顺序表B.单链表C.双链表D.单循环链表3、具有线性结构的数据结构是(D)。A.图B.树C.广义表D.栈4、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动(B)个元素。A.n-iB.n-i+1C.n-i-1D.i5、非空的循环单链表head的尾结点p满足(A)。A.p->next==head
7、B.p->next==NULLC.p==NULLD.p==head6、链表不具有的特点是(A)。A.可随机访问任一元素 B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表长度成正比7、在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是(C)。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->n
8、ext;C.q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;D.q->next=p->next;q->prior=p;p->next=q;p->next=q;8、线性表采用链式存储时,结点的存储地址(C)。A.必须是连续的B.必须是不连续的C.连续与否均可D.和头结点的存储地址相连续9、在一个长度为n的顺序表中删除第i个元素,需要向前移动(A)个元素。A.n-iB.n-i+1C.n-i-1D.i+110、线性表是n个(C)的有限序列。A
此文档下载收益归作者所有