2024年3月9日发(作者:说言)
判断:
1.线性表的逻辑顺序与存储顺序总是一致的。F
2.顺序存储的线性表可以按序号随机存取。F
3.顺序表的插入和删除操作不需要付出很大的时间代价,因为每次操作平均只有近一半的
元素需要移动。 F
4.线性表中的元素可以是各种各样的,但同一线性表中的数据元素具有相同的特性,因此
是属于同一数据对象。
5.在线性表的顺序存储结构中,逻辑上相邻的两个元素在物理位置上并不一定紧邻。T
6.在线性表的顺序存储结构中,插入和删除时,移动元素的个数与该元素的位置有关。T
1.单链表中,增加一个头结点的目的是为了(C )。
(A) 使单链表至少有一个结点 (B)标识表结点中首结点的位置
(C)方便运算的实现 (D) 说明单链表是线性表的链式存储
2.若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采
用( )存储方式最节省运算时间。
(A) 单链表 (B) 仅有头指针的单循环链表
(C) 双链表 (D) 仅有尾指针的单循环链表
3.若某线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用( )存储
方式最节省运算时间( )。
(A) 单链表 (B) 顺序表 (C) 双链表 (D) 单循环链表
1. 一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素
是( )。
A. 不确定 B. n-i+1 C. i D. n-i
2. 若一个栈的输入序列为1,2,3,…,n,输出序列的第一个元素是i,则第j个输出元素是
( )。
A. i-j-1 B. i-j C. j-i+1 D. 不确定的
3. 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pN,若pN是n,则pi
是( )。
A. i B. n-i C. n-i+1 D. 不确定
4. 有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?( )
A. 5 4 3 6 1 2
B. 4 5 3 1 2 6 C. 3 4 6 5 2 1 D. 2 3 4 1 5 6
1. 循环队列存储在数组]中,则入队时的操作( )。A. rear=rear+1 B.
rear=(rear+1) mod (m-1)
C. rear=(rear+1) mod m D. rear=(rear+1)mod(m+1)
2. 若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从
队列中删除一个元素,再加入两个元素后,rear和front的值分别为多少?B
A.1和 5 B. 2和4 C. 4和2 D. 5和1
3.栈和队列的共同点是( )。
A. 都是先进先出 B. 都是先进后出
C. 只允许在端点处插入和删除元素 D. 没有共同点
1.若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,执行
concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2)))
其结果为( E )
A.ABC###G0123 B.ABCD###2345
C.ABC###G2345 D.ABC###2345
E.ABC###G1234 F.ABCD###1234 G.ABC###01234
2.串的长度是指( B )
A.串中所含不同字母的个数 B.串中所含字符的个数
C.串中所含不同字符的个数 D.串中所含非空格字符的个数
1.知U=‘xyxyxyxxyxy’;t=‘xxy’;
ASSIGN(S,U);
ASSIGN(V,SUBSTR(S,INDEX(s,t),LEN(t)+1));
ASSIGN(m,‘ww’)
求REPLACE(S,V,m)= ________。
2.设s1=”AB”,s2=”ABCD”,s3=”EFGHIJK,试画出堆存储结构下的存储映象图。
3.已知:s1=〃I’m a student〃,s2=〃student〃,s3=〃teacher〃,试求下列各运算的结果:
strstr(s1,s2);strlen(s1);
strcat(s2,s3);delstr(s1,4,10);
WU
1.按行优先存储方式,写出三维数组A[3][2][4]在内存中的排列顺序及地址计算公式(假设
每个数组元素占用L个字节的内存单元,a[0][0][0]的内存地址为Loc(a[0][0][0]))。
2.按列优先存储方式,写出三维数组A[3][2][4]在内存中的排列顺序及地址计算公式(假设
每个数组元素占用L个字节的内存单元,a[0][0][0]的内存地址为Loc(a[0][0][0]))。
1.设数组a[1..50,1..80]的基地址为2000,每个元素占2个存储单元,若以行序为主序顺序存
储,则元素a[45,68]的存储地址为_(1)_;若以列序为主序顺序存储,则元素a[45,68]的存储
地址为_(2)_。
2.数组b[1..10,-2..6,2..8]以行优先的顺序存储,设第一个元素的首址是100,每个元素的长度
为3。试求元素b[5,0,7]的存储首址。
提示:LOC(aijk)=LOC(a000)+[v2*v3*(i-c1)+v3*(j-c2)+(k-c3)]*l (l为每个元素所占单元数)
1.A[N,N]是对称矩阵,将下面三角(包括对角线)以行序存储到一维数组T[N(N+1)/2]中,
则对任一上三角元素a[i][j]对应T[k]的下标k是( A )。
A. i(i-1)/2+j B. j(j-1)/2+i
C. i(j-i)/2+1 D. j(i-1)/2+1
2024年3月9日发(作者:说言)
判断:
1.线性表的逻辑顺序与存储顺序总是一致的。F
2.顺序存储的线性表可以按序号随机存取。F
3.顺序表的插入和删除操作不需要付出很大的时间代价,因为每次操作平均只有近一半的
元素需要移动。 F
4.线性表中的元素可以是各种各样的,但同一线性表中的数据元素具有相同的特性,因此
是属于同一数据对象。
5.在线性表的顺序存储结构中,逻辑上相邻的两个元素在物理位置上并不一定紧邻。T
6.在线性表的顺序存储结构中,插入和删除时,移动元素的个数与该元素的位置有关。T
1.单链表中,增加一个头结点的目的是为了(C )。
(A) 使单链表至少有一个结点 (B)标识表结点中首结点的位置
(C)方便运算的实现 (D) 说明单链表是线性表的链式存储
2.若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采
用( )存储方式最节省运算时间。
(A) 单链表 (B) 仅有头指针的单循环链表
(C) 双链表 (D) 仅有尾指针的单循环链表
3.若某线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用( )存储
方式最节省运算时间( )。
(A) 单链表 (B) 顺序表 (C) 双链表 (D) 单循环链表
1. 一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素
是( )。
A. 不确定 B. n-i+1 C. i D. n-i
2. 若一个栈的输入序列为1,2,3,…,n,输出序列的第一个元素是i,则第j个输出元素是
( )。
A. i-j-1 B. i-j C. j-i+1 D. 不确定的
3. 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pN,若pN是n,则pi
是( )。
A. i B. n-i C. n-i+1 D. 不确定
4. 有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?( )
A. 5 4 3 6 1 2
B. 4 5 3 1 2 6 C. 3 4 6 5 2 1 D. 2 3 4 1 5 6
1. 循环队列存储在数组]中,则入队时的操作( )。A. rear=rear+1 B.
rear=(rear+1) mod (m-1)
C. rear=(rear+1) mod m D. rear=(rear+1)mod(m+1)
2. 若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从
队列中删除一个元素,再加入两个元素后,rear和front的值分别为多少?B
A.1和 5 B. 2和4 C. 4和2 D. 5和1
3.栈和队列的共同点是( )。
A. 都是先进先出 B. 都是先进后出
C. 只允许在端点处插入和删除元素 D. 没有共同点
1.若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,执行
concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2)))
其结果为( E )
A.ABC###G0123 B.ABCD###2345
C.ABC###G2345 D.ABC###2345
E.ABC###G1234 F.ABCD###1234 G.ABC###01234
2.串的长度是指( B )
A.串中所含不同字母的个数 B.串中所含字符的个数
C.串中所含不同字符的个数 D.串中所含非空格字符的个数
1.知U=‘xyxyxyxxyxy’;t=‘xxy’;
ASSIGN(S,U);
ASSIGN(V,SUBSTR(S,INDEX(s,t),LEN(t)+1));
ASSIGN(m,‘ww’)
求REPLACE(S,V,m)= ________。
2.设s1=”AB”,s2=”ABCD”,s3=”EFGHIJK,试画出堆存储结构下的存储映象图。
3.已知:s1=〃I’m a student〃,s2=〃student〃,s3=〃teacher〃,试求下列各运算的结果:
strstr(s1,s2);strlen(s1);
strcat(s2,s3);delstr(s1,4,10);
WU
1.按行优先存储方式,写出三维数组A[3][2][4]在内存中的排列顺序及地址计算公式(假设
每个数组元素占用L个字节的内存单元,a[0][0][0]的内存地址为Loc(a[0][0][0]))。
2.按列优先存储方式,写出三维数组A[3][2][4]在内存中的排列顺序及地址计算公式(假设
每个数组元素占用L个字节的内存单元,a[0][0][0]的内存地址为Loc(a[0][0][0]))。
1.设数组a[1..50,1..80]的基地址为2000,每个元素占2个存储单元,若以行序为主序顺序存
储,则元素a[45,68]的存储地址为_(1)_;若以列序为主序顺序存储,则元素a[45,68]的存储
地址为_(2)_。
2.数组b[1..10,-2..6,2..8]以行优先的顺序存储,设第一个元素的首址是100,每个元素的长度
为3。试求元素b[5,0,7]的存储首址。
提示:LOC(aijk)=LOC(a000)+[v2*v3*(i-c1)+v3*(j-c2)+(k-c3)]*l (l为每个元素所占单元数)
1.A[N,N]是对称矩阵,将下面三角(包括对角线)以行序存储到一维数组T[N(N+1)/2]中,
则对任一上三角元素a[i][j]对应T[k]的下标k是( A )。
A. i(i-1)/2+j B. j(j-1)/2+i
C. i(j-i)/2+1 D. j(i-1)/2+1