第1题
若线性表最常用的操作是存取第i个元素及其前驱的值,则采用( )存储方式节省时间。
顺序表
单链表
单循环链表
双链表
第2题
在一个以Head为头指针的单循环链表中,p指针指向尾指针的条件是( )
p->next==NULL
p->next==head
p->next->next==head
p->data==-1
第3题
下列不属于栈的应用的是( )
迷宫问题
程序递归
表达式求值
作业的调度
第4题
若一个算法的时间复杂度用T(n)表示,其中n的含义是( )
循环层数
语句条数
问题规模
函数数量
第5题
对需要频繁插入和删除结点的线性表,适合的存储方式是( )
顺序储存
链式存储
索引存储
散列存储
第6题
用三元组表表示稀疏矩阵,目的是为了( )
对非零元素进行随机访问
便于插入或删除矩阵元素
节省存储空间
便于增加或减少矩阵中的非零元素
第7题
在单链表中,存储每个结点有两个域,即数据域和指针域,后者指向该结点的( )
开始结点
结束结点
直接前驱
直接后继
第8题
常用于函数调用的数据结构是( )
栈
数组
队列
链表
第9题
判定一个循环队列Q(最多有m0个元素,采用“少用一个元素空间”来判别队空队满),判断队为满的条件是( )
Q->front= =Q->rear
Q->front= =(Q->rear+1)%m0
Q->front!= =Q->rear
Q->front != =(Q->rear+1)%m0
第10题
设一个栈的输入序列为A,B,C,D,E,则借助一个栈所得到的输出序列不可能的是( )
A,B,C,D,E
E,D,C,B,A
D,C,E,A,B
D,E,C,B, A
第11题
链式存储的存储结构所占存储空间( )
分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
只有一部分,存放结点值
只有一部分,存储表示结点间关系的指针
分两部分,一部分存放结点值,另一部分存放结点所占单元数
第12题
线性表若采用链式存储结构时,要求内存中可用存储单元的地址( )
必须是连续的
部分地址必须是连续的
一定是不连续的
连续或不连续都可以
第13题
已知L是带头结点的单链表,且P结点既不是首元结点,也不是尾元结点,在P结点后插入S结点的语句序列是( )
S->next=P->next; P->next=S;
P->next=S; S->next=P->next;
S=P->next; P=S->next;
S->next=P; P->next=S;
第14题
已知L是带头结点的单链表,且P结点既不是首元结点,也不是尾元结点,在P结点的后继结点的语句序列是( )
S=P; P->next=P->next->next; free(S);
S=P->next; P->next=P->next->next; free(S);
P->next=P->next->next; S=P->next; free(S);
P->next=P->next->next; S=P; free(S);
第15题
表长为n的顺序存储的线性表,当在任何位置上插入或删除一个元素的概率相等时,插入一个元素所需移动元素的平均个数为( )
(n-1)/2
n
(n+1)/2
n/2
第16题
表长为n的顺序存储的线性表,当删除任意一个元素的概率相等时,删除一个元素所需移动元素的平均个数为( )
第17题
对称矩阵A[N][N],A[1][1]为首元素,将下三角(包括对角线)元素以行优先顺序存储到一维数组元素T[1]至T[N(N+1)/2]中,则任一元素A[i][j]存于T[k]中,下标k为( )
K=I*(I+1)/2+J (其中I=max(i,j),J=min(i,j); )
K=J*(J+1)/2+I (其中I=max(i,j),J=min(i,j); )
第18题
算法分析的目的是( )
找出数据结构的合理性
研究算法中的输入和输出的关系
分析算法的效率以求改进
分析算法的易懂性和文档性
第19题
计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备具备输入、输出和( )等5个特性。
可行性、可移植性和可扩充性
可行性、确定性和有穷性
确定性、有穷性和稳定性
易读性、稳定性和安全性
第20题
在下列算法中,时间复杂度是O(1)的操作是( )
在n个结点的顺序表中,访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
在n个结点的链表中,访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
在n个结点的顺序表中,删除第i个结点(1≤i≤n)
在n个结点的链表中,删除第i个结点(1≤i≤n)
第21题
如果两个串含有相同的字符,则说他们相等( )
对
错
第22题
算法是解决问题的步骤,也就是一些列的指令序列( )
第23题
一个算法可以没有输出( )
第24题
在单循环链表中,其中有一个指针S指向某一个结点,能够删除结点S的前驱结点( )
第25题
栈和队列是特殊的线性表,其特殊性体现在插入和删除位置受到限制( )
第26题
线性表的顺序存储结构相比于链式存储结构总是节省空间的( )
第27题
双向链表中在某个结点P之前插入一个结点,其时间复杂度为O(1)( )
第28题
广义表是线性表的推广,所以是一种线性结构,可以用顺序存储结构来存储( )
第29题
串是一种特殊的线性表,其特殊性体现在:数据元素是字符;操作对象是数据元素序列( )
第30题
在单链表中,除了首元结点外,任一结点的存储位置由数据元素的next指针指向( )
第31题
评价算法的优劣通常是用算法的执行时间来衡量( )
第32题
在顺序表中插入一个元素,首先要判断顺序表是不是已经满了( )
第33题
队列的特点是先进先出,栈的特点是后进先出( )
第34题
对于串来说,顺序存储结构最合适了,不需要作其他处理( )
第35题
算法的有四个要求:正确性、可读性、健壮性、高效率低存储( )
第36题
双向循环链表的头指针为head,若带头结点,则表空的条件是head->next=NULL或head->prior=NULL( )
第37题
链式存储结构失去了顺序存储结构的按序号随机存取的特点,所以在长度为n的线性链表中查找第 i个数据元素需要从头指针一个一个的数,所以时间性能为O(n)( )
第38题
稀疏矩阵由于存在很多零元素,为了节省空间可采用压缩存储方式,通常有三元组表和十字链表存储( )
第39题
一般来说,为了插入删除算法方便,链栈需要设置头结点( )
第40题
顺序队列存在假溢出现象,所以不能用顺序存储结构存储队列( )
选择题(1 - 40题,共计100分)