(单选题)1: 设一数列的顺序为1,2,3,4,5,6,通过栈结构不可能排成的顺序数列为()。 A: 3,2,5,6,4,1 B: 1,5,4,6,2,3 C: 2,4,3,5,1,6 D: 4,5,3,6,2,1 (单选题)2: Substring('DATA STRUCTURE',5,9)=( )。 A: 'STRUCTURE' B: 'ASTUCTUR' C: 'DATA STRUCTRUE' D: 'DATA' (单选题)3: 在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。 A: HL=p;p->next=HL; B: p->next=HL;HL=p; C: p->next=HL;p=HL; D: p->next=HL->next;HL->next=p; (单选题)4: 某二叉树的先序序列和后序序列正好相反,则该二叉树一定是( )的二叉树。 A: 空或只有一个结点高度等于其结点数 B: 任一结点无左孩子 C: 任一结点无右孩子 (单选题)5: 数组A中,每个元素A的长度为3个字节,行下标I 从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,存放该数组至少需要的单元数为( )。 A: 80 B: 100 C: 240 D: 270 (单选题)6: 线性表的链接实现有利于()运算。 A: 插入 B: 读表元 C: 查找 D: 定位 (单选题)7: 设有两个串(S1和S2),求S1在S2中首次出现的位置的运算称为()。 A: 连接 B: 模式匹配 C: 求子串 D: 求串长 (单选题)8: 设单链表中指针p指着结点A,若要删除A之后的结点(若存在),则需要修改指针操作为()。 A: p->next=p->next->next B: p=p->next C: p=p->next->next D: p->next=p (单选题)9: 在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是( )。 A: Shell排序 B: 起泡排序 C: 插入排序 D: 选择排序 (单选题)10: 在有n个叶子结点的哈夫曼树中,其结点总数为( )。 A: 不确定 B: 2n C: 2n+1 D: 2n-1 (单选题)11: 若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。 A: 3,2,1 B: 2,1,3 C: 3,1,2 D: 1,3,2 (单选题)12: 设有50行60列的二维数组A[50][60],其元素长度为4字节,按行优先顺序存储,基地址为200,则元素A[18][25]的存储地址为()。 A: 3700 B: 4376 C: 3900 D: 4620 (单选题)13: 设有一个二元数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676 (10),每个元素占一个空间,则A[4][5]在( )位置,(10)表明用10进数表示。 A: 692(10) B: 626(10) C: 709(10) D: 724(10) (单选题)14: 若待排序对象序列在排序前已按其排序码递增顺序排序,则采用( )方法比较次数最少。 A: 直接插入排序 B: 快速排序 C: 归并排序 D: 直接选择排序 (单选题)15: 设有1000个元素,用折半查找时,最大比较次数是()。 A: 1 B: 7 C: 10 D: 25 (单选题)16: 线性表是一个具有n个()的有限序列。 A: 表元素 B: 字符 C: 数据元素 D: 数据项 (单选题)17: 设F是一个森林,B是由F转换得到的二叉树,F中有n个非叶结点,则B中右指针域为空的结点有()个。 A: n-1 B: n C: n+1 D: n+2 (单选题)18: 队列操作的原则是( )。 A: 先进先出 B: 后进先出 C: 只能进行插入 D: 只能进行删除 (单选题)19: 队列的删除操作是在( )进行。 A: 队首 B: 队尾 C: 队前 D: 队后 (单选题)20: 若由森林转化得到的二叉树是非空的二叉树,则二叉树形状是 ()。 A: 根结点无右子树的二叉树 B: 根结点无左子树的二叉树 C: 根结点可能有左二叉树和右二叉树 D: 各结点只有一个儿子的二叉树 (单选题)21: 设循环队列Q[1..N-1]的头尾指针为F,R,当插入元素时尾指针R加1,头指针F总是指在队列中第一个元素的前一个位置,则队列中元素计数为()。 A: R-F B: N-(R-F) C: (R-F+N)%N D: (F-R+N)%N (单选题)22: 用某种排序方法队线性表(25,84,21,47,15,27,68,35,20)进行排序,元素序列变化如下: (1)25,84,21,47,15,27,68,35,20 (2)20,15,21,25,47,27,68,35,84 (3)15,20,21,25,35,27,47,68,84 (4)15,20,21,25,27,35,47,68,84 所采用的排序方法是( )。 A: 选择排序 B: Shell排序 C: 归并排序 D: 快速排序 (单选题)23: 从一棵B_树删除元素的过程中,若最终引起树根结点的合并,则新树高度是( )。 A: 原树高度加1 B: 原树高度减1 C: 原树高度 D: 不确定 (单选题)24: 一个队的入队序列是1,2,3,4 ,则队列的输出序列是( )。 A: 4,3,2,1 B: 1,2,3,4 C: 1,4,3,2 D: 3,2,1,4 (单选题)25: 完成堆排序的全过程需要 ( )个纪录大小的辅助空间。 A: 1 B: n C: nlog2n D: |nlog2n| (单选题)26: 对下面四个序列用快速排序的方法进行排序,以序列的第一个元素为基础进行划分 。 在第一趟划分过程中,元素移动次数最多的序列是 ()。 A: 82,75,70,16,10,90,68,23 B: 23,10,16,70,82,75,68,90 C: 70,75,68,23,10,16,90,82 D: 70,75,82,90,23,16,10,68 (单选题)27: 设在栈中,由顶向下已存放元素c、b、a,在第4个元素d入栈之前,栈中元素可以出栈, 试问d入栈前后,不可能的出栈序列是( )。 A: d c b a B: c b d a C: c a d b D: c d b a (单选题)28: 非空的循环单链表head的尾节点(由p所指向)满足( )。 A: p->next=NULL B: p=NULL C: p->next=head D: p=head (单选题)29: 算法的时间复杂度是指( )。 A: 执行算法程序所需要的时间 B: 算法程序的长度 C: 算法执行过程中所需要的基本运算次数 D: 算法程序中的指令条数 (单选题)30: 由两个栈共享一个向量空间的好处是( )。 A: 减少存取时间,降低下溢发生的机率 B: 节省存储空间,降低上溢发生的机率 C: 减少存取时间,降低上溢发生的机率 D: 节省存储空间,降低下溢发生的机率 (单选题)31: 向顺序栈中压入新元素时,应当( )。 A: 先移动栈顶指针,再存入元素 B: 先存入元素,再移动栈顶指针 C: 先后次序无关紧要 D: 同时进行 (单选题)32: 为了最快地对线性结构的数据进行某数据元素的读取操作,则其数据存储结构宜采用( )方式。 A: 顺序存储 B: 链式存储 C: 索引存储 D: 散列存储 (单选题)33: 线索化二叉树中某结点D,没有左孩子的主要条件是()。 A: D->Lchild=Null B: D->ltag=1 C: D->Rchild=Null D: D->ltag=0 (单选题)34: 以下关于数据的存储结构的叙述哪一条是正确的( )。 A: 数据的存储结构是数据间关系的抽象描述 B: 数据的存储结构是逻辑结构在计算机存储器中的实现 C: 数据的存储结构分为线性结构和非线性结构 D: 数据的存储结构对数据运算的具体实现没有影响 (单选题)35: 邻接表是图的一种( )。 A: 顺序存储结构 B: 链式存储结构 C: 索引存储结构 D: 列存储结构 (单选题)36: 若某线性表中最常用的操作是取第I个元素和找第I个元素的前趋元素,则采用( )存储方式最节省时间。 A: 顺序表 B: 单链表 C: 双链表 D: 单循环链表 (单选题)37: 下列关于栈的叙述正确的是( )。 A: 栈是非线性结构 B: 栈是一种树状结构 C: 栈具有先进先出的特征 D: 栈具有后进先出的特征 (单选题)38: 向二叉排序树中插入一个元素时,其时间复杂度大致为( )。 A: O(log以2为底的n) B: O(n) C: O(1) D: O(n*log2n) (判断题)39: 二维数组是其数组元素为线性表的线性表? A: 错误 B: 正确 (判断题)40: 线性表若采用链式存储表示时所有结点之间的存储单元地址可连续可不连续? A: 错误 B: 正确 (责任编辑:admin) |