算法与大数据结构精彩试题Word下载.docx
- 文档编号:14419942
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:10
- 大小:45.60KB
算法与大数据结构精彩试题Word下载.docx
《算法与大数据结构精彩试题Word下载.docx》由会员分享,可在线阅读,更多相关《算法与大数据结构精彩试题Word下载.docx(10页珍藏版)》请在冰豆网上搜索。
5、下列程序的时间复杂度为()
s=0;
10;
s=s+1;
A.O(10)
B.O(20)
C.O
(1)
D.O(102)
6、数据的最小单位是()
A.数据项
B.数据类型
C.数据元素
D.数据变量
7、下列程序的时间复杂度为()
i=1;
k=100;
while(i<
n)
{
k=k+1;
i=i+2;
}
A.O
(1)
B.O(n)
C.O(n3)
D.O(n2)
8、称算法的时间复杂度为O(logn),其含义是指算法的执行时间和_______的数量级相同。
第二章线性表
1、非空的循环单链表L的尾结点(由p所指)满足( )
A.p->
next=NULL
B.p=NULL
C.p->
next=
L
D.p=
L
2、从一个长度为n的顺序表中删除第i个元素(1≤i≤n)时,需向前移动的元素的个数是( )
A.n-i
B.n-i+1
C.n-i-1
D.i
3、链表不具备的特点是( )
A.可随机访问任一结点
B.插入删除不需要移动元素
C.不必事先估计存储空间
D.所需空间与其长度成正比
4、顺序表的存储密度为1,而链表的存储密度_。
5、写算法,顺序查找一个元素值等于e的元素的逻辑序号。
若这样的元素不存在,则返回值为0。
6、完善下列程序段。
在一个单链表(已知每个结点含有数据域data和指针域next)中删除p所指结点时,可执行如下操作:
1)q=p->
next;
2)p->
data=___①____;
3)p->
next=_____②____;
4)free(q);
题目如改成删除p所指的结点的后继结点,②为
7、设单链表中结点结构为(data,link).已知指针q所指结点是指针p所指结点的直接前驱,若在*q
与*p之间插入结点*s,则应执行下列哪一个操作(
)
A.
s->
link=p->
link;
p->
link=s;
B.
q->
link=p
C.
link=s->
s->
link=p;
D.
link=q;
8、若某线性表中最常用的操作是在第i个元素之前插入一个元素和删除第i个元素,则采用什么存储方式最节省时间。
()
A、散列表B、单链表C、二叉链表D、顺序表
9、写一算法实现带头结点的单链表L的就地逆置,即在原表的存储空间中将表(a1,a2,…,an)逆置为(an,…,a2,a1)。
10、指出下述程序段的功能是什么?
LinkListDemo(LinkListL){//L是无头结点单链表
ListNode*Q,*P;
if(L&
&
L->
next){
Q=L;
L=L->
P=L;
while(P->
next)P=P->
P->
next=Q;
Q->
next=NULL;
}
returnL;
11、线性表(a1,a2,……,an)以方式存储,访问第i个位置元素的时间复杂性为()。
A、O(i)B、O
(1)
C、O(n)D、O(i-1)
12、设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用哪个最节省时间()
A、单链表B、单循环链表
C、带尾指针的单循环链表D、带头结点的双循环链表
13、双向链表中有两个指针域,llink和rlink,分别指向前驱和后继,设p指向链表中的一个结点,q指向一待插入结点,想要求在p前插入q,则正确的插入为()
A.p->
llink=q;
q->
rlink=p;
p-llink->
rlink=q;
llink=p->
llink;
B.q->
p->
llink=q->
rlink;
C.q->
D.p-llink->
14、线性表L=(a1,a2,……,an)用数组表示,假定删除表中任一元素的概率相同,则删除一个元素平均需要移动元素的个数是。
15、顺序存储结构是通过物理上相邻表示元素之间的关系;
链式存储结构是通过表示元素之间的关系的。
第三章栈和队列
1、循环队列存储在数组A[0..m]中,则入队时的操作为()
A.rear=rear+1B.rear=(rear+1)%(m-1)
C.rear=(rear+1)%mD.rear=(rear+1)%(m+1)
2、有6个元素6,5,4,3,2,1的顺序进栈,问下列哪一个不是合法的出栈序列?
()
A、543612B、453126
C、346521D、234156
3、栈和队列的共同点是()
A、都是先进先出B、都是先进后出
C、只允许在端点处插入和删除元素D、没有共同点
4、对于栈操作数据的原则是()
A、先进先出B、后进先出
C、后进后出D、不分顺序
5、、顺序栈用data[1..n]存储数据,栈顶指针是top,则值为x的元素入栈的操作时
6、设一个栈的输入序列为1、2、3、4,则借助一个栈所得到的输出序列不可能的是哪个?
A、1,2,3,4B、4,3,2,1
C、1,3,4,2D、4,1,2,3
7、一个栈的入栈序列为a,b,c,则出栈序列不可能的是(
c,b,a
B.b,a,c
C.c,a,b
D.a,c,b
8、设输入序列为a,b,c,d。
下面的四个序列中,借助一个栈能够得到的输出序列是()
A、d,c,a,bB、c,a,d,b
C、a,c,d,bD、d,a,b,c
9、若一个栈以向量V[1..n]存储,初始栈顶指针top为n+1,则下面x进栈的正确操作是哪个?
()
A、top=top+1;
V[top]=x
B、V[top]=x;
top=top+1
C、top=top-1;
D、V[top]=x;
top=top-1
10、表达式a*(b+c)-d的后缀表达式是()
A、abcd*+-B、abc+*d-
C、abc*+d-D、-+*abcd
11、顺序栈S中top为栈顶指针,指向栈顶元素所在的位置,elem为存放栈的数组,则元素e进栈操作的主要语句为( )
A.s.elem[top]=e;
B.s.elem[top+1]=e;
s.top=s.top+1;
C.s.top=s.top+1;
D.s.top=s.top+1;
s.elem[top+1]=e;
s.elem[top]=e;
12、循环队列sq中,用数组elem[0••25]存放数据元素,sq.front指示队头元素的前一个位置,sq.rear指示队尾元素的当前位置,设当前sq.front为20,sq.rear为12,则当前队列中的元素个数为( )
A.8
B.16C.17
D.18
13、假设为循环队列分配的向量空间为Q[20],若队列的长度和队头指针值分别为13和17,则当前尾指针的值为____。
14、在循环队列中,存储空间为0~n-1,设队头指针front指向队头元素前一个空闲元素,队尾指针指向队尾元素,那么队满标志为front=(rear+1)%n,队空标志为________。
15、有5个元素,其进栈次序为A、B、C、D、E,在各种可能的出栈次序中,以元素C、D最先出栈(即C第一个且D第二个出栈)的次序有哪几个?
16、指出下述程序段的功能是什么?
voidDemo1(SeqStack*S){
inti;
arr[64];
n=0;
while(!
StackEmpty(S))arr[n++]=Pop(S);
for(i=0,i<
n;
i++)Push(S,arr[i]);
}//Demo1
第四章数组
1、设有一个二维数组A[10][20],按列为主序存放于一个连续的存储空间中,A[0][0]的存储地址是200,每个数组元素占1个存储字,则A[6][2]的存储字地址是多少。
2、二维数组A[6][10]按行优先顺序存储,若每个数组元素占用4个存储单元,A[0][0]的存储地址为860,则数组元素A[3][5]的存储地址为( )
A.1000
B.860
C.1140
D.1200
第六章树和二叉树
1、设树T的度为4,其中度为1、2、3和4的结点个数分别为4,2,1,1,则T中的叶子结点数为()
A.5B.6C.7D.8
2、二叉树由、、三个基本单元组成。
3、试编写算法求出二叉树的深度。
二叉树的存储结构为如下说明的二叉链表:
typedefstructBiTNode{
TDataTypedata;
structBiTNode*lchild,*rchild;
}BiTree;
4、将算术表达式((a+b)+c*(d+e)+f)*(g+h)转化为二叉树。
5、已知一棵二叉树的中序序列:
ECBHFDJIGA,后序序列:
ECHFJIGDBA,试画出该二叉树
6、设T是一棵二叉树,除叶子结点外,其它结点的度数皆为2,若T中有6个叶结点,试问:
(1)T树中共有多少非叶结点?
(2)若叶结点的权值分别为1,2,3,4,5,6。
请构造一棵哈曼夫树,并计算该哈曼夫树的带权路径长度wpl。
7、按二叉树的定义,具有3个结点的二叉树有几种( )
A.3
B.4
C.5
D.6
8、对于一棵具有30个结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 数据结构 精彩 试题