数据结构与算法
一、选择题(每题2分,共52分)
1.计算机内部数据处理的基本单位是_________。
A 数据
B 数据元素
C 数据项
D 数据库
2.数据在计算机内有链式和顺序两种存储方式,在算法时间的执行效率上,链式存储比顺序存储要_______。
A 高
B 低
C 相同
D 不好说
3.下面关于线性表的叙述中,错误的是哪一个____________?
A 线性表中任何一个元素有且仅有一个直接前趋、有且仅有一个直接后继。
B 线性表采用顺序存储,不便于进行插入和删除操作。
C 线性表采用链式存储,不必占用一片连续的存储单元。
D 线性表是一个有限序列,可以为空。
4.在一个长度为n的顺序表中第i个元素(0<=i<=n-1)之前删除一个元素时,需向前移动________个元素。
A n-i
B n-i+1
C n-i-1
D i
5.设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需要修改针操作为_________。
A p=p->next;
B p->next=p->next->next;
C p->next=p;
D p=p->next->next;
6.在一个单链表中,已知q结点是p结点的前趋结点,若在q和p之间插入s 结点,则须执行_______。
A s->next=p->next; p->next=s;
B q->next=s;s->next=p;
C p->next=s->next;s->next=p;
D p->next=s;s->next=q;
7.一个栈的入栈序列是a,b,c,d,e,则栈的不可能的输出序列是_______。
A edcba
B decba
C dceab
D abcde
8.一个栈的输入序列为1,2,3…100,若输出序列的第1个元素是100,输出第51个元素是_________。
A 51
B 超出范围
C 50
D 49
9.向一个栈顶指针为hs的链栈中插入一个s结点时,应执行_________。
A hs->next=s;
B s->next=hs;hs=s;
C s->next=hs->next;hs->next=s;
D s->next=hs;hs=hs->next;
10.假设以数组A[m]存放循环队列的元素,其头尾指针分别为front和rear,则当前队列中的元素个数为__________。