第2章 线性表
2.下面关于线性表的叙述中,错误的是哪一个?( )【北方交通大学 2001 一、14(2分)】 A.线性表采用顺序存储,必须占用一片连续的存储单元。 B.线性表采用顺序存储,便于进行插入和删除操作。 C.线性表采用链接存储,不必占用一片连续的存储单元。 D.线性表采用链接存储,便于插入和删除操作。 3.线性表是具有n个( )的有限序列(n>0)。 【清华大学 1998 一、4(2分)】 A.表元素 B.字符 C.数据元素 D.数据项 E.信息项 4.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。【哈尔滨工业大学 2001 二、1(2分)】
A.顺序表 B.双链表 C.带头结点的双循环链表 D.单循环链表
5.某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。【南开大学 2000 一、3】
A.单链表 B.仅有头指针的单循环链表 C.双链表 D.仅有尾指针的单循环链表 6.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。 A. 单链表 B.单循环链表 C. 带尾指针的单循环链表 D.带头结点的双循环链表
7.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用( )存储方式最节省运算时间。【北京理工大学 2000 一、1(2分)】
A.单链表 B.双链表 C.单循环链表 D.带头结点的双循环链表 8. 静态链表中指针表示的是( ). 【北京理工大学 2001 六、2(2分)】 A. 内存地址 B.数组下标 C.下一元素地址 D.左、右孩子地址 9. 链表不具有的特点是( ) 【福州大学 1998 一、8 (2分)】 A.插入、删除不需要移动元素 B.可随机访问任一元素 C.不必事先估计存储空间 D.所需空间与线性长度成正比 10. 下面的叙述不正确的是( )【南京理工大学 1996 一、10(2分)】 A.线性表在链式存储时,查找第i个元素的时间同i的值成正比
B. 线性表在链式存储时,查找第i个元素的时间同i的值无关 C. 线性表在顺序存储时,查找第i个元素的时间同i 的值成正比 D. 线性表在顺序存储时,查找第i个元素的时间同i的值无关 18.在一个以 h 为头的单循环链中,p 指针指向链尾的条件是()【南京理工大学1998 一、15(2分)】
A. p^.next=h B. p^.next=NIL C. p^.next.^next=h D. p^.data=-1 23.在双向链表指针p的结点前插入一个指针q的结点操作是( )。【青岛大学 2000 五、2(2分)】
A. p->Llink=q;q->Rlink=p;p->Llink->Rlink=q;q->Llink=q;
B. p->Llink=q;p->Llink->Rlink=q;q->Rlink=p;q->Llink=p->Llink; C. q->Rlink=p;q->Llink=p->Llink;p->Llink->Rlink=q;p->Llink=q; D. q->Llink=p->Llink;q->Rlink=q;p->Llink=q;p->Llink=q;
第3章 栈和队列
3. 一个栈的输入序列为123?n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是( )。
A. 不确定 B. n-i+1 C. i D. n-i
4. 若一个栈的输入序列为1,2,3,?,n,输出序列的第一个元素是i,则第j个输出元素是( )。 A. i-j-1 B. i-j C. i-j+1 D. 不确定的
6. 有六个元素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 7. 设栈的输入序列是1,2,3,4,则( )不可能是其出栈序列。【中科院计算所2000一、10(2分)】
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, 19. 表达式a*(b+c)-d的后缀表达式是( )。【南京理工大学 2001 一、2(1.5分)】
A.abcd*+- B. abc+*d- C. abc*+d- D. -+*abcd
28. 若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为多少?( )【浙江大学1999 四、1(4分)】
A. 1和 5 B. 2和4 C. 4和2 D. 5和1 32. 栈和队列的共同点是( )。【燕山大学 2001 一、1(2分)】
A. 都是先进先出 B. 都是先进后出 C. 只允许在端点处插入和删除元素 D. 没有共同点
37. 依次读入数据元素序列{a,b,c,d,e,f,g}进栈,每进一个元素,机器可要求下一个元素进栈或弹栈,如此进行,则栈空时弹出的元素构成的序列是以下哪些序列?【哈尔滨工业大学 2000 七(8分)】
A.{d ,e,c,f,b,g,a} B. {f,e,g,d,a,c,b} C. {e,f,d,g,b,c,a} D. {c,d,b,e,f,a,g}
第4章 串
2 若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,执行
concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2))) 其结果为( )【北方交通大学 1999 一、5 (25/7分)】
A.ABC###G0123 B.ABCD###2345 C.ABC###G2345 D.ABC###2345 E.ABC###G1234 F.ABCD###1234 G.ABC###01234
第5章 数组和广义表
1.设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为( )。
A. 13 B. 33 C. 18 D. 40 18. 已知广义表L=((x,y,z),a,(u,t,w)),从L表中取出原子项t的运算是( )。
A. head(tail(tail(L))) B. tail(head(head(tail(L)))) C. head(tail(head(tail(L)))) D. head(tail(head(tail(tail(L)))))
19. 已知广义表LS=((a,b,c),(d,e,f)),运用head和tail函数取出LS中原子e的运算是( )。 A. head(tail(LS)) B. tail(head(LS))
C. head(tail(head(tail(LS))) D. head(tail(tail(head(LS)))) 20. 广义表A=(a,b,(c,d),(e,(f,g))),则下面式子的值为( )。【北京邮电大学1999一、2(2分)】
Head(Tail(Head(Tail(Tail(A)))))
A. (g) B. (d) C. c D. d
第6章 树和二叉树
1.已知一算术表达式的中缀形式为 A+B*C-D/E,后缀形式为ABC*+DE/-,其前缀形式为( )
A.-A+B*C/DE B. -A+B*CD/E C.-+*ABC/DE D. -+A*BC/DE 【北京航空航天大学 1999 一、3 (2分))
8.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( )
A.9 B.11 C.15 D.不确定 【北京工商大学2001一.7(3分)】 16. 有关二叉树下列说法正确的是( )【南京理工大学 2000 一、11 (1.5分)】
A.二叉树的度为2 B.一棵二叉树的度可以小于2 C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为2
28.对二叉树的结点从1开始进行连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,可采用( )次序的遍历实现编号。【北京理工大学 2000 一、4 (2分)】
A.先序 B. 中序 C. 后序 D. 从根开始按层次遍历
33.已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为( )。
A.CBEFDA B. FEDCBA C. CBEDFA D.不定 【浙江大学 1999 四、2 ( 4分)】 42.一棵非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树一定满足( )
A.所有的结点均无左孩子B.所有的结点均无右孩子C.只有一个叶子结点D.是任意一棵二叉树 46.在下列情况中,可称为二叉树的是( )
A.每个结点至多有两棵子树的树 B. 哈夫曼树 C.每个结点至多有两棵子树的有序树 D. 每个结点只有一棵右子树 E.以上答案都不对 【西安交通大学 1996 三、4 (3分)】 50. 引入二叉线索树的目的是( )
A.加快查找结点的前驱或后继的速度 B.为了能在二叉树中方便的进行插入与删除
C.为了能方便的找到双亲 D.使二叉树的遍历结果唯一【南京理工大学1998 一、5 (2分)】
第7章 图
2.设无向图的顶点个数为n,则该图最多有( )条边。
2
A.n-1 B.n(n-1)/2 C. n(n+1)/2 D.0 E.n 【清华大学 1998 一、5 (2分)】【西安电子科技大 1998 一、6 (2分)】 【北京航空航天大学 1999 一、7 (2分)】
?0A???1??01010?1??0??可以看出,该图共有(①)个顶点;如果是有向图该图共有(②) 条弧;
12. 从邻接阵矩
如果是无向图,则共有(③)条边。【中科院软件所 1999 六、2(3分)】
①.A.9 B.3 C.6 D.1 E.以上答案均不正确 ②.A.5 B.4 C.3 D.2 E.以上答案均不正确 ③.A.5 B.4 C.3 D.2 E.以上答案均不正确
17. 设图如右所示,在下面的5个序列中,符合深度优先遍历的序列有多少?( )
【南京理工大学 2000 一、20 (1.5分)】
a e b d f c a c f d e b a e d f c b a e f d c b a e f d b c A.5个 B.4个 C.3个 D.2个
a
bec
df
第17题图 第18题图
18.下图中给出由7个顶点组成的无向图。从顶点1出发,对它进行深度优先遍历得到的序列是( ① ),而进行广度优先遍历得到的顶点序列是( ② )。【中科院软件所 1999 六、2-(1)(2分)】
①.A.1354267 B.1347652 C.1534276 D.1247653 E.以上答案均不正确 ②.A.1534267 B.1726453 C.l354276 D.1247653 E.以上答案均不正确 19.下面哪一方法可以判断出一个有向图是否有环(回路):【东北大学 2000 4、2(4分)】
A.深度优先遍历 B. 拓扑排序 C. 求最短路径 D. 求关键路径 25.已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7},
E={
V6,V7>},G的拓扑序列是( )。
A.V1,V3,V4,V6,V2,V5,V7 B.V1,V3,V2,V6,V4,V5,V7 C.V1,V3,V4,V5,V2,V6,V7 D.V1,V2,V5,V3,V4,V6,V7
【北京航空航天大学 2000 一、7 (2分)】 30. 关键路径是事件结点网络中( )。【西安电子科技大学 2001应用 一、4 (2分)】
A.从源点到汇点的最长路径 B.从源点到汇点的最短路径 C.最长回路 D.最短回路
第9章 查找
2. 对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为( ) 【南京理工大学1998一、7(2分)】
A.(N+1)/2 B. N/2 C. N D. [(1+N)*N ]/2
4. 下面关于二分查找的叙述正确的是 ( ) 【南京理工大学 1996 一、3 (2分)】
A. 表必须有序,表可以顺序方式存储,也可以链表方式存储C. 表必须有序,而且只能从小到大排列 B. 表必须有序且表中数据必须是整型,实型或字符型 D. 表必须有序,且表只能以顺序方式存储 11.当采用分快查找时,数据的组织方式为 ( ) 【南京理工大学 1996 一、7 (2分)】
A.数据分成若干块,每块内数据有序
B.数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块
C. 数据分成若干块,每块内数据有序,每块内最大(或最小)的数据组成索引块
D. 数据分成若干块,每块(除最后一块外)中数据个数需相同
18.分别以下列序列构造二叉排序树,与用其它三个序列所构造的结果不同的是( ) 【合肥工业大学2000一、4(2分)】
A.(100,80, 90, 60, 120,110,130) B.(100,120,110,130,80, 60, 90) C.(100,60, 80, 90, 120,110,130) D. (100,80, 60, 90, 120,130,110)
28. 下面关于哈希(Hash,杂凑)查找的说法正确的是( ) 【南京理工大学 1998 一、10 (2分)】
A.哈希函数构造的越复杂越好,因为这样随机性好,冲突小 B.除留余数法是所有哈希函数中最好的
C.不存在特别好与坏的哈希函数,要视情况而定
D.若需在哈希表中删去一个元素,不管用何种方法解决冲突都只要简单的将该元素删去即可
应用题
第3章 栈和队列
11. 设一数列的输入顺序为123456,若采用堆栈结构,并以A和D分别表示入栈和出栈操作,试问通过入出栈操作的合法序列。
(1) 能否得到输出顺序为325641的序列。(5分) 答:能
过程描述:A(1、2、3)→D(3、2)→A(4、5)→D(5)→A(6)→D(6、4、1) (2) 能否得到输出顺序为154623的序列。(5分) 【北方交通大学 1995 一(10分)】 答:不能
因为1和5出栈标明2,3,4都在栈内,出栈顺序2一定在3的后面,即不可能出现23的序列。
第6章 树和二叉树
1.从概念上讲,树,森林和二叉树是三种不同的数据结构,将树,森林转化为二叉树的基本目的是什么,并指出树和二叉树的主要区别。【西安电子科技大学2001软件 二、1(5分)】
答:树,森林转化为二叉树的基本目的:
树和森林采用二叉树的存储结构(二叉链表表示法),可以利用二叉树的已有算法解决树和森林的有关问题。
树和二叉树区别:
① 树中结点的最大度数没有限制,而二叉树结点的最大度数为2; ② 树的结点无左、右之分,而二叉树的结点有左、右之分;
5.将算术表达式((a+b)+c*(d+e)+f)*(g+h)转化为二叉树。【东北大学 2000 三、1 (4分)】
+
+ f
+ * +
a b c + g h
d
e