资源介绍
一、选择题(24分)
1.下列程序段的时间复杂度为( )。
i=0,s=0; while (s<n) {s=s+i;i++;}
(A)O(n1/2) (B) O(n1/3) (C) O(n) (D)O(n2)
2.设某链表中最常用的操作是在链表的尾部插入或删除元素,则选用下列( )存储方式最节省运算时间。
(A)单向链表 (B)单向循环链表
(C) 双向链表 (D)双向循环链表
3.设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为( )。
(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;
4.设输入序列为1、2、3、4、5、6,则通过栈的作用后可以得到的输出序列为( )。
(A) 5,3,4,6,1,2 (B)3,2,5,6,4,1
(C) 3,1,2,5,4,6 (D)1,5,4,6,2,3
5.设有一个10阶的下三角矩阵A(包括对角线),按照从上到下、从左到右的顺序存储到连续的55个存储单元中,每个数组元素占1个字节的存储空间,则A[5][4]地址与A[0][0]的地址之差为( )。
(A)10 (B) 19 (C) 28 (D) 55
6.设一棵m叉树中有N1个度数为1的结点,N2个度数为2的结点,……,Nm个度数为m的结点,则该树中共有( )个叶子结点。
(A) (B) (C) (D)