您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 商业计划书 > 题库(数据结构_题库 共148页)
难度分为:A-很难、B-较难、C-一般、D-容易数据结构习题集一、选择题1.算法的时间复杂度取决于()A.问题的规模B.待处理数据的初态C.A和B【知识点】:1.4【参考分】:2分【难易度】:D【答案】:C2.一个算法应该是()。A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A和C.【知识点】:1.4【参考分】:2分【难易度】:C【答案】:B3.算法的计算量的大小称为计算的()。A.效率B.复杂性C.现实性D.难度【知识点】:1.4【参考分】:2分【难易度】:C【答案】:B4.下面关于算法说法错误的是()A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C.算法的可行性是指指令不能有二义性D.以上几个都是错误的【知识点】:1.4【参考分】:2分【难易度】:C【答案】:B6.下面说法错误的是()(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1)B.(1),(2)C.(1),(4)D.(3)【知识点】:1.4【参考分】:2分【难易度】:C【答案】:C7.从逻辑上可以把数据结构分为()两大类。A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构【知识点】:1.2【参考分】:2分【难易度】:C【答案】:C8.以下与数据的存储结构无关的术语是()。A.循环队列B.链表C.哈希表D.栈【知识点】:2.2#3#9.3【参考分】:2分【难易度】:B【答案】:D9.以下数据结构中,哪一个是线性结构()?A.广义表B.二叉树C.稀疏矩阵D.串【知识点】:5.4#6.2#5.3#4.1【参考分】:2分【难易度】:C【答案】:D10.以下哪个数据结构不是多型数据类型()A.栈B.广义表C.有向图D.字符串【知识点】:1.2【参考分】:2分【难易度】:C【答案】:D11.以下数据结构中,()是非线性数据结构A.树B.字符串C.队D.栈【知识点】:1.2【参考分】:2分【难易度】:C【答案】:A12.顺序存储结构中,存储单元的地址()。A.一定连续B.一定不连续C.不一定连续D.部分连续,部分不连续【知识点】:1.2【参考分】:2分【难易度】:C【答案】:A13.以下属于逻辑结构的是()。A.顺序表B.哈希表C.有序表D.单链表【知识点】:1.2【参考分】:2分【难易度】:C【答案】:C14.下述哪一条是顺序存储结构的优点?()A.存储密度大B.插入运算方便C.删除运算方便D.可方便地用于各种逻辑结构的存储表示【知识点】:2.2【参考分】:2分【难易度】:C【答案】:D15.下面关于线性表的叙述中,错误的是哪一个?()A.线性表采用顺序存储,必须占用一片连续的存储单元。B.线性表采用顺序存储,便于进行插入和删除操作。C.线性表采用链接存储,不必占用一片连续的存储单元。D.线性表采用链接存储,便于插入和删除操作。【知识点】:2.2【参考分】:2分【难易度】:C【答案】:B16.线性表是具有n个()的有限序列(n=0)。A.表元素B.字符C.数据元素D.数据项【知识点】:2.1【参考分】:2分【难易度】:C【答案】:C17.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最节省时间。A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表【知识点】:2.2#2.3【参考分】:2分【难易度】:A【答案】:C18.某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表【知识点】:2.3【参考分】:2分【难易度】:C【答案】:D19.静态链表中指针表示的是()。A.内存地址B.数组下标C.下一元素地址D.左、右孩子地址【知识点】:2.3【参考分】:2分【难易度】:A【答案】:B20.链表不具有的特点是()A.插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比【知识点】:2.3【参考分】:2分【难易度】:C【答案】:B21.下面的叙述不正确的是()A.线性表在链式存储时,查找第i个元素的时间同i的值成正比B.线性表在链式存储时,查找第i个元素的时间同i的值无关C.线性表在顺序存储时,查找第i个元素的时间同i的值成正比D.线性表在顺序存储时,查找第i个元素的时间同i的值无关【知识点】:2.2#2.3【参考分】:2分【难易度】:B【答案】:C22.(1)静态链表既有顺序存储的优点,又有动态链表的优点。所以,它存取表中第i个元素的时间与i无关。(2)静态链表中能容纳的元素个数的最大数在表定义时就确定了,以后不能增加。(3)静态链表与动态链表在元素的插入、删除上类似,不需做元素的移动。以上错误的是()A.(1),(2)B.(1)C.(1),(2),(3)D.(2)【知识点】:2.3【参考分】:2分【难易度】:A【答案】:B23.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为()(1=i=n+1)。A.O(0)B.O(1)C.O(n)D.O(n2)【知识点】:2.2【参考分】:2分【难易度】:C【答案】:C24.对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为()。A.O(n)O(n)B.O(n)O(1)C.O(1)O(n)D.O(1)O(1)【知识点】:2.3【参考分】:2分【难易度】:C【答案】:C25.线性表(a1,a2,…,an)以链接方式存储时,访问第i位置元素的时间复杂性为()A.O(i)B.O(1)C.O(n)D.O(i-1)【知识点】:2.3【参考分】:2分【难易度】:C【答案】:C26.非空的循环单链表head的尾结点P满足()。A.P-NEXT=headB.P-NEXT=NULLC.p=NULLD.P=head【知识点】:2.3【参考分】:2分【难易度】:C【答案】:A27.完成在双循环链表结点p之后插入s的操作是()。A.p-next=s;s-priou=p;p-next-priou=s;s-next=p-next;B.p-next-priou=s;p-next=s;s-priou=p;s-next=p-next;C.s-priou=p;s-next=p-next;p-next=s;p-next-priou=s;D.s-priou=p;s-next=p-next;p-next-priou=s;p-next=s;【知识点】:2.3【参考分】:2分【难易度】:B【答案】:D28.在双向循环链表指针p的结点前插入一个指针q的结点操作是()。A.p-prior=q;q-next=p;p-prior-next=q;q-prior=q;B.p-prior=q;p-prior-next=q;q-next=p;q-prior=p-prior;C.q-next=p;q-prior=p-prior;p-prior-next=q;p-prior=q;D.q-prior=p-prior;q-next=q;p-prior=q;p-prior=q;【知识点】:2.3【参考分】:2分【难易度】:B【答案】:C29.在单链表指针为p的结点之后插入指针为s的结点,正确的操作是:()。A.p-next=s;s-next=p-next;B.s-next=p-next;p-next=s;C.p-next=s;p-next=s-next;D.p-next=s-next;p-next=s;【知识点】:2.3【参考分】:2分【难易度】:C【答案】:B30.对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是()A.head==NULLB.head-next==NULLC.head-next==headD.head!=NULL【知识点】:2.3【参考分】:2分【难易度】:C【答案】:B31.对于栈操作数据的原则是()。A.先进先出B.后进先出C.后进后出D.不分顺序【知识点】:3.1【参考分】:2分【难易度】:D【答案】:B32.一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1=i=n)个元素是()。A.不确定B.n-i+1C.iD.n-i【知识点】:3.1【参考分】:2分【难易度】:B【答案】:B33.有六个元素6,5,4,3,2,1的顺序进栈,问下列哪一个不是合法的出栈序列?()A.543612B.453126C.346521D.234156【知识点】:3.1【参考分】:2分【难易度】:B【答案】:A34.设栈的输入序列是1,2,3,4,则()不可能是其出栈序列。A.1,2,4,3,B.2,1,3,4,C.1,4,3,2,D.4,3,1,2,E.3,2,1,4【知识点】:3.1【参考分】:2分【难易度】:B【答案】:D35.设一个栈的输入序列是1,2,3,4,5,则下列序列中,是栈的合法输出序列的是()。A.51234B.45132C.43125D.32154【知识点】:3.1【参考分】:2分【难易度】:B【答案】:D36.设有三个元素X,Y,Z顺序进栈(进的过程中允许出栈),下列得不到的出栈排列是()。A.XYZB.YZXC.ZXYD.ZYX【知识点】:3.1【参考分】:2分【难易度】:C【答案】:D37.输入序列为ABC,可以变为CBA时,经过的栈操作为()A.push,pop,push,pop,push,popB.push,push,push,pop,pop,popC.push,push,pop,pop,push,popD.push,pop,push,push,pop,pop【知识点】:3.1【参考分】:2分【难易度】:C【答案】:B38.若一个栈以数组V[1..n]存储,初始栈顶指针top为n+1,则下面x进栈的正确操作是()。A.top:=top+1;V[top]:=xB.V[top]:=x;top:=top+1C.top:=top-1;V[top]:=xD.V[top]:=x;top:=top-1【知识点】:3.1【参考分】:2分【难易度】:B【答案】:C39.若栈采用顺序存储方式存储,现两栈共享空间V[1..m],top[i]代表第i个栈(i=1,2)栈顶,栈1的底在v[1],栈2的底在V[m],则栈满的条件是()。A.|top[2]-top[1]|=0B.top[1]+1=top[2]C.top[1]+top[2]=mD.top[1]=top[2]【知识点】:3.1【参考分】:2分【难易度】:B【答案】:B40.栈在()中应用。A.递归调用B.子程序调用C.表达式求值D.A,B,C【知识点】:3.1【参考分】:2分【难易度】:C【答案】:D41.执行完下列语句段后,i值为:()intf(intx){return((x0)?x*f(x-1):2);}inti;i=f(f(1));A.2B.4C.8D.无限递归【知识点】:3.1【参考分】:2分【难易度】:B【答案】:B42.设计一个判别表达式中左,右括号是否配对出现的算法,采用()数据结构最佳。A.线性表的顺序存储结构B.队列C.线性表的链式存储结构D.栈【知识点】:3.1【参考分】:2分【难易度】:C【答案】:D44.递归过程或函数调用时,处理参数及返回地址,要用一种称为()的数据结构。A.队列B.多维数组C.栈D.线性表【知识点】:3.1【参考分】:2分【难易度】:C【答案】:C45.假设以数组A[m]存放循环队列的元素,其头尾指针分别为front和rear,则当前队列中的元素个数为()。A.
本文标题:题库(数据结构_题库 共148页)
链接地址:https://www.777doc.com/doc-3704710 .html