1.在常见的数据处理中, B 是最基本的处理。
A.删除 B.查找 C.读取 D.插入
2.下面给出的名称中, A 不是数据元素的同义词。
A.字段 B.结点 C.顶点 D.记录
3. D 是图状关系的特例。
A.只有线性关系 B.只有树型关系
C.线性关系和树型关系都不 D.线性关系和树型关系都
4.链式存储结构中,每个数据的存储结点里 D指向邻接存储结点的指针,用以反映数据间的逻辑关系。
A.只能有1个 B.只能有2个 C.只能有3个 D.可以有多个
5.本书将采用 C 来描述算法。
A.自然语言 B.流程图(即框图) C.类C语言 D.C语言
6.有下面的算法段:
for (i=0; i k++; 其时间复杂度为 B 。 A.O(1) B.O(n) C.O(log2n) D.O(n2) 7.下面,对非空线性表特点的论述, C 是正确的。 A.所有结点有且只有一个直接前驱 B.所有结点有且只有一个直接后继 C.每个结点至多只有一个直接前驱,至多只有一个直接后继 D.结点间是按照1对多的邻接关系来维系其逻辑关系的 8.一般单链表Lk_h为空的判定条件是 A 。 A.Lk_h == NULL B.Lk_h->Next == NULL C.Lk_h->Next == Lk_h D.Lk_h != NULL 9.带表头结点的单链表Lk_h为空的判定条件是 B 。 A.Lk_h == NULL B.Lk_h->Next == NULL www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C.Lk_h->Next == Lk_h D.Lk_h != NULL 10.往一个顺序表的任一结点前插入一个新数据结点时,平均而言,需要移动 B个结点。 A.n B.n/2 C.n+1 D.(n+1)/2 11.在一个单链表中,已知qtr所指结点是ptr所指结点的直接前驱。现要在qtr所指结点和ptr所指结点之间插入一个rtr所指的结点,要执行的操作应该是 C 。 A.rtr->Next = ptr->Next; ptr->Next = rtr; B.ptr->Next = rtr->Next; C.qtr->Next = rtr; rtr->Next = ptr; D.ptr->Next = rtr; rtr->Next = qtr->Next; 12.在一个单链表中,若现在要删除ptr指针所指结点的直接后继结点,则需要执行的操作是 A 。 A.ptr->Next = ptr->Next->Next ; B.ptr = ptr->Next; ptr->Next = ptr->Next->Next ; C.ptr = ptr->Next->Next ; www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info D.ptr->Next ptr ; 13.在长度为n的顺序表中,往其第i个元素(1≤i≤n)之前插入一个新的元素时,需要往后移动 B 个元素。 A.n-i B.n-i+1 C.n-i-1 D.i 14.在长度为n的顺序表中,删除第i个元素(1≤i≤n)时,需要往前移动 A 个元素。 A.n-i B.n-i+1 C.n-i-1 D.i 15.设tail是指向一个非空带表头结点的循环单链表的尾指针。那么,删除链表起始结点的操作应该是 D 。 A.ptr = tail ; B.tail = tail->Next ; tail = tail->Next ; free (tail) ; free (ptr); C.tail = tail->Next->Next ; D.ptr = tail->Next->Next ; Free (tail); tail->Next->Next = ptr->Next ; Free (ptr); free (ptr); www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 16.在单链表中,如果指针ptr所指结点不是链表的尾结点,那么在ptr之后插入由指针qtr所指结点的操作应该是 B 。 A.qtr->Next = ptr ; B.qtr->Next = ptr->Next ; ptr->Next = qtr ; ptr->Next = qtr ; C.qtr->Next = ptr->Next ; D.ptr->Next = qtr ; ptr = qtr ; qtr->Next = ptr ; 17.一个栈的元素进栈序列是a、b、c、d、e,那么下面的 C 不能做为一个出栈序列。 A.e、d、c、b、a B.d、e、c、b、a C.d、c、e、a、b D.a、b、c、d、e 18.判定一个顺序队列Qs(最多有n个元素)为空的条件是 C 。 A.Qs_rear-Qs_front == n*size B.Qs_rear-Qs_front+1 == n*size C.Qs_front == Qs_rear D.Qs_front == Qs_rear+size 19.判定一个顺序队列Qs(最多有n个元素)真满的条件是 A 。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A.Qs_rear-Qs_front == n*size B.Qs_rear-Qs_front+1 == n*size C.Qs_front == Qs_rear D.Qs_front == Qs_rear+size 20.在一个链式队列Lq中,Lq_front和Lq_rear分别为队首、队尾指针。现在由指针ptr所指结点要进队,则插入操作应该是 B 。 A.Lq_front->Next = ptr; Lq_front = ptr; B.Lq_rear->Next = ptr; Lq_rear = ptr; C.ptr->Next = Lq_rear; Lq_rear = ptr; D.ptr->Next = Lq_front; Lq_front = ptr; 多项选择题(46分) 1、计算机算法必须具备输入、输出、( )等5个特性。 A、可行性 B、确定性 C、有穷性 D、安全性 2、算法分析的两个主要方面是( )。 A、空间复杂度 B、数据复杂性 C、程序复杂性 D、 时间复杂度 3、以下说法错误的是( AB )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、数据元素是数据的最小单位 B、数据项是数据的基本单位 C、数据结构是带结构的数据元素的集合 D、一些表面上很不相同的数据可以有相同的逻辑结构 4、数据的存储结构包括( AC )散列和索引四种基本类型。 A、顺序 B、数组 C、链接 D、集合 E、散列 5、在以下的叙述中,正确的是( BC )。 A、线性表的线性存储结构优于链表存储结构 B、二维数组是其数据元素为线性表的线性表 C、栈的操作方式是后进先出 D、队列的操作是先进后出 6、在双链表中,每个结点有两个指针域,包括( )。 A、一个指向前驱结点的指针 B、一个指向后继结点的指针 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、一个指向第一个结点的指针 D、一个指向最后一个结点的指针 7、判断两个串相等的充分必要条件有两个( )。 A、两个串的长度相等 B、两个串的第一个字符相等即可 C、两个串上对应位置的字符相同 D、两个串中的字符的集合相等 8、下面关于线性表的叙述中,错误的是( BC )。 A、线性表采用顺序存储,必须占用一片连续的存储单元 B、线性表采用顺序存储,便于进行插入和删除操作 C、线性表采用链式存储,必须占用一片连续的存储单元 D、线性表采用链式存储,便于进行插入和删除操作 9、下列关于空串的叙述中正确的是( BD )。 A、空串是长度为零的字符串 B、空串是任意串的子串 C、仅含有空格符的串成为空串 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info D、空串中不含任何字符 10、具有线性结构的是( )。 A、树 B、图 C、广义表 D、队列 11、串的存储方式可以分为(AB )。 A、顺序串 B、链串 C、堆串 D、空串 12、一个链队列是由( AD )唯一的确定。 A、头指针 B、队头 C、链 D、尾指针 13、下列哪些是广义表的特性( ABC )。 A、层次性 B、共享性 C、递归性 D、结构性 14、以下哪些项为稀疏矩阵元素的三元组表示的项( 15、以下那些项为用十字链表表示的稀疏矩阵元素结点信息(A、 元素所在行和列 B、元素的值 C、指向该元素所在行的下一个元素的指针 。 ABCD 。 ) ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info D、指向该元素所在列的下一个元素的指针 16、一个稀疏矩阵Am*n采用三元组形式表示, 若完成了其的转置运算要经过哪几步( ABC )。 A、 矩阵的行、列数值互换 B、矩阵元素所在行列值互换 C、元素在矩阵中排列的位置(即标号)重新排列 D、 把矩阵压缩成一个下三角矩阵 17、一个栈的入栈序列是a,b,c,d,e,则栈的可能的输出序列是(ABD ) A、edcba B、decba C、dceab D、abcde 18、稀疏矩阵一般的压缩方法有( BC )两种 A、 二维数组 B、三元组 C、十字链表 D、三维数组 19、特殊矩阵主要形式有( ABCD )。 A、对称矩阵 B、上三角矩阵 C、下三角矩阵 D、对角矩阵 20、树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。这里,我们把由树转化得到的二叉树叫做这棵树对应的二叉树。结论( AB )是正确的。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、 树的先根遍历与其对应的二叉树的先序遍历序列相同 B、 树的后根遍历与其对应的二叉树的中序遍历序列相同 C、树的先根遍历与其对应的二叉树的中序遍历序列相同 D、 以上都不对 21、在下述结论中,正确的是( AD )。 A、只有一个结点的二叉树的度为0 B、二叉树的度为2 C、二叉树的左右子树可任意交换 D、深度为K的完全二叉树的结点个数小于或等于深度相同的满二叉树 22、下列关于二叉树的叙述中不正确的是( ABC )。 A、度为2的树称为二叉树 B、二叉树的度肯定是2 C、二叉树中所有结点的度都是2 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info D、具有三个结点的二叉树有5种形态 23、下列叙述中不正确的是( ABD )。 A、某一棵树中,结点A有2个孩子结点,3个兄弟结点,结点B是结点A 的双亲结点,则结点B的度为5 B、树的度是指树中所有结点度的总和 C、任意一个非空树中有且仅有一个结点没有双亲结点 D、任意一个非空树中有且仅有一个度为零的结点 24、下列关于二叉树遍历的叙述中正确的是( ACD )。 A、若已知某个二叉树后序遍历和中序遍历的结果,肯定能够惟一确定 一棵二叉树 B、若已知某个二叉树前序遍历和后序遍历的结果,肯定能够惟一确定一棵二叉树 C、对二叉树分别进行先序、中序和后序遍历,在3个结果中所有叶子结点被访问的先后顺序完全相同 D、对二叉树分别进行先序、中序和后序遍历,在3个结果中处在同一层次上的结点被访问的先后顺序完全相同 25、树在机内的表示方式有( ABC ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、双亲表示法 B、孩子表示法 C、孩子兄弟表示法 D、二叉树法 26、以下说法正确的是( ABC )。 A、无向图的极大连通子图称为连通分量 B、连通图的广度优先搜索中一般要采用队列来暂存刚访问过的顶点 C、图的深度优先搜索中一般要采用栈来暂存刚访问过的结点 D、有向图的遍历不可采用广度优先搜索方法 27、下面说法正确的是( BC )。 A、在AOE网中,减小任一关键活动上的权值后,整个工期也就相应减少 B、AOE网工程工期为关键路径上的权之和 C、在关键路径上的活动都是关键活动,而关键活动也必须在关键路径上 D、任何一个关键活动提前完成,将使整个工程提前完成 28、下面关于求关键路径的说法正确的是( ABD )。 A、求关键路径是以拓扑排序为基础的 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info B、一个事件的最早开始时间同以该事件为尾的弧的活动最早开始时间相同 C、一个事件的最迟开始时间为以该事件为尾的弧的活动最迟开始时间与该活动的持续时间的差 D、关键活动一定位于关键路径上 29、下面叙述中不正确的是( ABD )。 A、存在环的有向图能够成功地进行拓扑排序 B、在AOV网中弧表示活动 C、AOV网是一种有向无环图 D、任何AOV网拓扑排序的结果惟一确定 30、下列关于图的存储结构的叙述中不正确的是( ABD )。 A、用邻接表存储图,占用的存储空间大小只与图中结点个数有关,而与边数无关 B、用邻接表存储图,占用的存储空间大小只与图中边数有关,而与结点个数 无关 C、用邻接矩阵存储图,占用的存储空间大小只与图中结点个数有关,而与边数无关 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info D、用邻接表存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关 31、图的BFT生成树的树高比DFT生成树的树高(AC ) A、小于 B、大于 C、 等于 D、不一定 32、最小生成树可以用( CD)算法。 A、哈夫曼 B、笛杰斯特拉 C、 普里姆 D、克鲁斯卡尔 33、表示图的存储结构有(ABC )。 A、邻接矩阵 B、邻接表 C、邻接多重表 D、链式结构 34、索引文件由(AC )组成 A、索引表 B、散列 C、 主文件 D、队列 35、常用处理冲突的方法是( AB )。 A、开放地址法 B、拉链法 C、 平方取中法 D、重叠法 36、散列表的查找效率主要取决于( BC ) A、ASL B、处理冲突方法 C、 散列函数 D、时间复杂度 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 37、二分查找要求结点(AC ) A、有序 B、无序 C、 顺序存储 D、链式存储 38、散列函数的构造方法有(ABCD )等几种。 A、 直接定址法 B、数字分析法 C、平方取中法 D、除留余数法 39、按存储器不同,可以将排序方法分为(CD ) A、 插入排序 B、堆排序 C、内部排序 D、外部排序 40、对于折半搜索所对应的判定树,它既是一棵(CD)的树. A、BST B、 AOV C、 二叉搜索树 D、 理想平衡树 41、下列( ACD )属于选择排序。 A、 简单选择排序 B、归并排序 C、树形选择排序 D、堆排序 42、平均时间复杂度是O(logn)的是( ABC ) A、 堆排序 B、快速排序 C、归并排序 D、基数排序 43、最坏情况下时间复杂度是O(n2)的是( BC ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、 堆排序 B、快速排序 C、简单排序 D、基数排序 44、下列排序方法稳定的是( BCD ) A、堆排序 B、归并排序 C、计数排序 D、基数排序 45、下列排序方法不稳定的是( ACD ) A、 堆排序 B、归并排序 C、希尔排序 D、快速排序 46、堆排序结构分为( BC ) A、中间堆 B、大顶堆 C、小顶堆 D、完全堆 、单项选择题 1、计算机算法必须具备输入、输出和(C )。 A、计算方法 B、排序方法 C、解决问题的有限运算步骤 D、程序设计法 2、若对数据结构采用了顺序存储,第一个结点地址为1001,每个节点的值需占用2个存储单元,则第三个节点的起始地址为(B)。 A、1003 B、1005 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、1006 D、1007 3、(b )是数据的基本单位。 A、数据结构 B、数据元素 C、数据项 D、数据类型 4、一般而言,最适合描述算法的语言为(c )。 A、自然语言 B、计算机程序语言 C、伪语言 D、数学公式 5、一种抽象数据类型包括数据和( b )两个部分。 A、数据类型 B、操作 C、数据抽象 D、类型说明 6、当一个作为实际传递的对象占用的存储空间较大并可能被修改时,应最好说明为(b ),以节省参数值的传输时间和存储参数的空间。 A、基本类型 B、引用型 C、指针型 D、常值引用型 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 7、线性表的顺序存储结构是一种(a )的存储结构。 A、随机存储 B、顺序存储 C、索引存取 D、散列存取 8、在顺序表上做增、删结点运算的平均时间复杂度是(b )。 A、O(1) B、O(n ) C、O(n2 ) D、O(log2n ) 9、在顺序表中,只要知道(d ),就可以在相同的时间内求出任一结点的存储地址。 A、开始结点 B、终端结点 C、向量大小 D、基地址和结点大小 10、在非空线性表中,有且只有一个直接前驱和一个直接后继的结点是(c )。 A、开始结点 B、终端结点 C、内部结点 D、所有结点 11、顺序表中逻辑上相邻的结点的物理位置为(a )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、一定相邻 B、不必相邻 C、按某种规律排列 D、不要求 12、在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是(b )。 A、O(1) B、O(n ) C、O(n2 ) D、O(log2n ) 13、在(b )运算中,使用顺序表比链表好。 A、插入 B、根据序号查找 C、删除 D、根据元素值查找 14、利用双向链表作线性表的存储结构的优点是(B )。 A、便于单向进行插入和删除的操作 B、便于双向进行插入和删除的操作 C、节省空间 D、便于销毁结构释放空间 15、在一个顺序存储的循环队列中,队头指针指向队头元素的(a )位置。 A、前一个 B、后一个 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、当前 D、后面 16、线性表中第一个结点没有直接前趋,称为( a )结点。 A、开始 B、末端 C、当前 D、尾端 17、假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为(A )。 A、front == rear B、front != NULL C、rear != NULL D、front == NULL 18、链表不具有的特点是( A )。 A、可以随机访问任何一个元素 B、插入和删除元素不需要移动元素 C、不必事先估计存储空间 D、所需的存储空间和链表长度无关 19、堆栈和队列的相同之处是(d )。 A、元素的进出满足先进后出 B、元素的进出满足先进先出 C、只允许在端点进行插入和删除操作 D、无共同点 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 20、栈与一般线性表的区别在于(b )。 A、数据元素的类型不同 B、运算是否受限制 C、数据元素的个数 D、逻辑结构不同 21、一个栈的入栈序列是abcde,则栈不可能的输出序列是(c )。 A、edcba B、decba C、dceab D、abcde 22、4个元素的进入队列Q的顺序是A,B,C,D,进行DeQueue(Q)操作后,队头元素是(b )。 A、A B、B C、C D、D 23、一个队列的入队序列是1,2,3,4,则队列的输出序列是( a)。 A、1,2,3,4 B、4,3,2,1 C、1,4,3,2 D、3,2,4,1 24、栈的插入和删除操作在( a )进行。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、栈顶 B、栈底 C、任意位置 D、指定位置 25、若让元素1,2,3依次进栈,则出栈次序不可能出现(c )种情况. A、3,2,1 B、2,1,3 C、3,1,2 D、1,3,2 26、一个顺序栈一旦被声明,其占用空间大小(a A、已固定 B、可以变化 C、不能固定 D、动态变化 27队列的插入操作是在(b)进行的。 A、队首 B、队尾 C、队前 D、队后 28、队列的删除操作是在(a )进行的。 A、队首 B、队尾 。 )www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、队前 D、队后 29、空串与空格字符组成的串的区别在于( b )。 A、没有区别 B、两串的长度不相等 C、两串的长度相等 D、两串包含的字符不相同 30、一个字串在包含它的主串中的位置是指(d )。 A、子串的最后那个字符在主串中的位置 B、子串的最后那个字符在主串中首次出现的位置 C、子串的第一个字符在主串中的位置 D、子串的第一个字符在主串中首次出现的位置 31、字符串采用结点大小为1的链表作为其存储结构,是指(d )。 A、链表的长度为1 B、链表中只存放一个字符 C、链表的每个结点的数据域中不仅只存放一个字符 D、链表的每个链结点的数据域中只存放了一个字符 32、在长度为n的字符串中S的第i个位置插入另外一个字符串,i的合法值应该是(c )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、i>0 B、i<=n C、1≤i<≤n D、1≤i<≤n+1 33、设s1=”I am a teacher”,其长度等于(b )。 A、0 B、14 C、13 D、15 34、有两个串P和Q,求P和Q中首次出现的位置的运算称(c A、连接 B、模式匹配 C、求子串 D、求串长 35、串是一种特殊的线性表,其特殊性体现在(b )。 A、可以顺序存储 B、数据元素是一个字符 C、可以链接存储 D、数据元素可以是多个字符 36、广义表是线性表的推广,它们之间的区别在于(a )。 A、能否使用子表 B、能否使用原子项 。 ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、表的长度 D、是否能为空 37、广义表c=(A,B,()),则表c的长度为(c )。 A、1 B、2 C、3 D、4 38、数组与一般线性表的区别主要在(c )。 A、存储方面 B、不能进行插入运算 C、逻辑结构方面 D、不能进行删除运算 39、广义表A=(a),则表尾为(c )。 A、a B、(( )) C、空表 D、(a) 40、设广义表的L=(a,b,L),其深度是( b ) A、3 B、无穷 C、2 D、都不对 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 41、树型结构最合适用来描述( c)。 A、有序的数据元素 B、无序的数据元素 C、数据元素之间具有层次关系的数据 D、数据元素之间没有关系的数据 42、若在一棵非空树中,某结点A有3个兄弟结点(包括A自身),B是A的双亲结点,则B的度为(b )。 A、2 B、3 C、4 D、5 43、按照树的定义,具有3个结点的树有(a )种形态。 A、2 B、3 C、4 D、5 44、按照二叉树的定义,具有3个结点的二叉树有(d)种形态。 A、2 B、3 C、4 D、5 45、下面说法中,(d )是正确的。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、度为2的树是二叉树 B、度为2的有序树是二叉树 C、子树有严格左、右之分的树是二叉树 D、子树有左、右之分、且度不超过2的树是二叉树 46、下面的说法中,( c )是正确的。 A、二叉树的度为2 B、二叉树中任意一个结点的度都为2 C、任何二叉树中结点度可以小于2 D、任何二叉树中至少有一个结点的度为2 47、若一棵二叉树有10个度为2的结点,则该二叉树的叶结点的个数(b )。 A、9 B、11 C、12 D、不确定 48、利用3,6,8,12这四个值作为叶子结点的权,生成一棵霍夫曼树,该树的带权路径长度为( a )。 A、55 B、29 C、58 D、38 49、若一棵满二叉树有2047个结点,则该二叉树中叶结点的个数为(b )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、512 B、1024 C、2048 D、4096 50、具有n个结点的二叉树采用二叉链表作为存储结构,链表中有(c )个存放nil的指针域。 A、n-1 B、n C、n+1 D、2n 51、在非空二叉树的中序遍历序列中,二叉树的根结点的左边(a )。 A、只有左子树上的所有结点 B、只有左子树上的部分结点 C、只有右子树上的所有结点 D、只有右子树上的部分结点 52、若非空二叉树的前序序列与后序序列的次序正好相反,则该二叉树一定是(d 的二叉树。 A、空或仅有一个结点 B、其分支结点无左子树 C、其分支结点无右子树 D、其分支结点的度都为1 53、下面关于哈夫曼树的说法,不正确的是(d )。 )www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、对应一组权值构造出的哈夫曼树一般不是唯一的 B、哈夫曼树具有最小带权路径长度 C、哈夫曼树没有度为1的结点 D、哈夫曼树中除了具有度为1的结点外,还有度为2的结点和叶结点 54、一组权值为(7,5,2,4)对应的哈夫曼树的带权路径长度为(b )。 A、25 B、35 C、45 D、55 55、深度为5的二叉树至多有( b )个结点。 A、16 B、31 C、15 D、30 56、若由森林转化得到的二叉树是非空的二叉树,则二叉树的形状是(c )。 A、根结点无右子树的二叉树 B、根结点无左子树的二叉树 C、根结点可能有左二叉树和右二叉树 D、各结点只有一个孩子的二叉树 57、在一棵树中,( c )没有前驱结点。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、树枝结点 B、叶子结点 C、树根结点 D、空结点 58、在一棵树中,( d )没有后继结点。 A、树枝结点 B、叶子结点 C、树根结点 D、空结点 59、在一棵具有n个结点的二叉树中,所有结点的空子树个数等于(c )。A、n B、n-1 C、n+1 D、2*n 60、在一棵树的左孩子-右兄弟表示法中,一个结点的右孩子是该结点的( A、兄弟 B、父子 C、祖先 D、子孙 61、在一棵树的静态双亲表示中,每个存储结点包含( b )个域。 A、1 B、2 a )结点。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、3 D、4 62、在一个图中,所有顶点的度数之和等于所有边的数目的(c )倍。 A、1/2 B、1 C、2 D、4 63、在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的(A、1/2 B、1 C、2 D、4 64、一个具有n个顶点的无向图最多有(a )条边。 A、n×(n-1)/2 B、n×(n-1) C、n×(n+1)/2 D、n×n 65、一个具有n个顶点的有向图最多有(b )条边。 A、n×(n-1)/2 B、n×(n-1) C、n×(n+1)/2 D、n×n )倍。 b www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 66、具有6个顶点的无向图至少应该有(b )条边才能是一个连通图。 A、4 B、5 C、6 D、7 67、一个无向图采用邻接矩阵存储方法,其邻接矩阵一定是一个(a )。 A、对称矩阵 B、对角矩阵 C、三角矩阵 D、稀疏矩阵 68、图的深度优先搜索算法类似于二叉树的(a )。 A、前序遍历 B、中序遍历 C、后序遍历 D、按层次遍历 69、具有n个顶点、e条边的无向图采用邻接矩阵存储方法。则邻接矩阵的大小为(d )。 A、n B、(n-1) ×(n+1) C、(n+1) ×(n+1) D、n×n 70、图的广度优先搜索算法类似于二叉树的(d )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、前序遍历 B、中序遍历 C、后序遍历 D、按层次遍历 71、有向图的一个顶点的度数等于该顶点的 (c )。 A、入度 B、出度 C、入度与出度之和 D、(入度+出度)/2 72、一个连通图的生成树是包含图中所有顶点的一个 ( A、极小子图 B、连通子图 C、极小连通子图 D、无环子图 73、n个顶点的连通图中至少含有 ( a )。 A、n-1条边 B、n条边 C、n(n-1)/2条边 D、n(n-1)条边 74、n个顶点的强连通图中至少含有 (b )。 A、n-1条有向边 B、n条有向边 c )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、n(n-1)/2条有向边 D、n(n-1)条有向边 75、一个有n个顶点和n条边的无向图一定是 (d )。 A、连通的 B、不连通的 C、无环的 D、有环的 76、任何一个连通图的生成树(c )。 A、可能不存在 B、只有一棵 C、一棵或多棵 D、一定有多棵 77、具有8个顶点的无向图最多有(b )条边。 A、8 B、28 C、56 D、72 78、具有8个顶点的有向图最多有(c )条边。 A、8 B、28 C、56 D、72 79、散列查找是由键值(b )确定散列表中的位置,并进行存储或查找。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、本身 B、散列函数值 C、相反数 D、平方 80、采用二分查找长度为n的线性表时,每个元素的平均查找长度为( d)。 A、O(n2 B、O(nlog2n ) C、O(n ) D、O(log2n ) 81、采用顺序查找长度为n的线性表时,每个元素的平均查找长度为(c )。 A、n B、n /2 C、(n+1)/2 D、(n-1)/2 82、通常把查找过程中对关键字需要执行的(C )作为衡量一个查找算法效率优劣的标准。 A、BST B、WPL C、ASL D、BFS 83、在表长是N的顺序表中,实施顺序查找,在查找不成功时,与关键字比较的次数(c )。 A、N B、1 C、N+1 D、N-1 84、如果要求一个线性表既能较快的查找,又能适应动态变化的要求,则采用( c)查找方法。 A、顺序 B、折半 C、分块 D、基本属性 85、线性表必须是( b ),才能进行二分查找。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、用向量存储的线性表 B、用向量存储的有序表 C、用链表存储的线性表 D、用链表存储的有序表 86、设有100个元素,用折半查找法进行查找时,最小比较次数是(a )。 A、1 B、2 C、3 D、6 87、在查找过程中,如同时还要做增、删工作,这种查找称为(c )。 A、静态查找 B、内查找 C、动态查找 D、外查找 88、下列(c )不是利用查找表中数据元素的关系进行查找的方法。 A、平衡二叉树 B、有序表的查找 C、散列查找 D、二叉排序树的查找 89、在所有的排序方法中,关键字的比较次数与记录的初始排列次序无关的是(d )。 A、希尔排序 B、冒泡排序 C、插入排序 D、选择排序 90、目前已比较为基础的内部排序中,其比较次数与待排序的纪录的初始排列状态无关的是( d )。 A、快速排序 B、冒泡排序 C、插入排序 D、二分插入排序 91、内部排序与外部排序的区别不在于(c )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、待排序文件的大小 B、有无内外存的交换C、是否在内存中排序 D、可采用的排序策略 92、设有1000个无序的元素,希望以最快的速度挑选出其中前10个最大的元素,最好选用的排序法是( a )。 A、堆排序 B、起泡排序 C、快速排序 D、基数排序 93、在排序方法中,( c)是不稳定的排序方法。 A、直接插入排序 B、冒泡排序 C、直接选择排序 D、归并排序 94、评价排序算法好坏的标准主要是(d )。 A、执行时间 B、辅助时间 C、算法本身复杂度 D、执行时间和所辅助时间 95、堆排序是一种( b)的排序。 A、插入 B、选择 C、交换 D、归并 96、快速排序在(c )的情况下最易发挥其长处。 A、被排序的数据中含有多个相同的排序码 B、被排序的数据已基本有序 C、被排序的数据完全无序 D、被排序的数据中的最大值和最小值相差悬殊 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 97、下述几种排序方法中,要求内存量最大是(b )。 A、插入排序 B、归并排序 C、快速排序 D、选择排序 98、下述几种排序方法中,平均查找长度最小的是(c )。 A、希尔排序 B、冒泡排序 C、插入排序 D、选择排序 99、每次从无序表中取出一个元素,把它插入到有序表中的适当位置,此种排序方法叫做(a )排序。 A、插入 B、交换 C、选择 D、归并 100、直接插入排序的方法要求被排序的数据( a )存储。 A、必须是顺序 B、必须是链表 C、顺序或链表 D、二叉树 1、数据的逻辑结构被形式地定义为B=(K,R),其中K是数据元素的有限集合,R是K上的( D)有限集合。 A、操作 B、映像 C、存储 D、关系 2、数据结构在计算机内存中的表示是指( A ) A、 数据的存储结构 B、 数据结构 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、数据的逻辑结构 D、 数据元素之间的关系 3、在数据结构中,与所使用的计算机无关的是数据的( A )结构。 A、逻辑 B、存储 C、逻辑和存储 D、物理 4、在数据结构中,从逻辑上可以把数据结构分成( C ) A、 动态结构和静态结构 B、紧凑结构和非紧凑结构 C、线性结构和非线性结构 D、内部结构和外部结构 5、数据结构在计算机内存中的表示是指( A ) A、数据的存储结构 B、 数据结构 C、数据的逻辑结构 D、 数据元素之间的关系 6、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储( C )。 A、数据的处理方法 B、数据元素的类型 C、数据元素之间的关系 D、 数据的存储方法 7、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素的方法以及它们之间的( B )和运算等的学科。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、结构 B、关系 C、运算 D、 算法 8、数据的( B )包括集合、线性、树形和图状结构四种基本类型。 A、存储结构 B、逻辑结构 C、基本运算 D、算法描述 9、算法的计算量的大小称为计算的( B ) A、效率 B、 复杂性 C、 现实性 D、 难度 10、下面关于算法说法错误的是( D ) A、算法最终必须由计算机程序实现 B、为解决某问题的算法同为该问题编写的程序含义是相同的 C、算法的可行性是指指令不能有二义性 D、以上几个都是错误的 11、以下数据结构中,( A )是非线性数据结构 A、树 B、字符串 C、队 D、栈 12、连续存储设计时,存储单元的地址( A ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、一定连续 B、一定不连续 C、不一定连续 D、部分连续,部分不连续 13、以下数据结构中( A )是线性结构。 A、队列 B、有向图 C、树 D、霍夫曼树 14、线性表元素之间的关系是( A )。 A、 一对一 B、 一对多 C、多对多 D、无关系 15、树结构元素之间的关系是( )。 A、 一对一 B、 一对多 C、多对多 D、无关系 16、序偶 A、前驱 B、后继 C、前导 D、前沿 17、下列四种基本的逻辑结构中,结构结点间不存在任何逻辑联系的是(A、集合 B、线性结构 C、树形结构 D、图形结构 18、下列程序段的时间复杂度为( A ) A ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info i=1; k=0; n=100; do { k=k+10*i; i=i++; } while (i!=n); A、O(1) B、O(n) C、O(i×n) D、O(i) 19、计算机算法必须具备输入、输出和(C )。 A、计算方法 B、排序方法 C、解决问题的有限运算步骤 D、程序设计法 20、若对数据结构采用了顺序存储,第一个节点地址为1001,每个节点的值需占用2个存储单元,则第三个节点的起始地址为( B )。 A、1003 B、1005 C、1006 D、1007 21、( B )是数据的基本单位。 A、数据结构 B、数据元素 C、数据项 D、数据类型 22、一般而言,最适合描述算法的语言为( C )。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、自然语言 B、计算机程序语言 C、伪语言 D、数学公式 23、一种抽象数据类型包括数据和( B )两个部分。 A、数据类型 B、操作 C、数据抽象 D、类型说明 24、当一个作为实际传递的对象占用的存储空间较大并可能被修改时,应最好说明为(B ),以节省参数值的传输时间和存储参数的空间。 A、基本类型 B、引用型 C、指针型 D、常值引用型 25、链表不具备的特点是( A )。 A、可随机访问任一结点 B、插入删除不需要移动元素 C、不必事先估计存储空间 D、所需空间与其长度成正比 26、不带头结点的单链表head为空的判定条件是( A ) A、head==NULL B、 head->next==NULL C、head->next==head D、head!=NULL 27、带头结点的单链表head为空的判定条件是( B ) A、head==NULL B、 head->next==NULL www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、head->next==head D、head!=NULL 28、带头结点的双循环链表L为空表的判定条件是( D ) A、L==NULL B、 L->next==NULL C、L->prior==NULL D、L->next==L 29、非空的循环单链表head的尾结点(由p所指向)满足( C ) A、p->next==NULL B、p==NULL C、p->next==NULL D、p==head 30、在循环双链表的p 所指结点之前插入s 所指结点的操作是( D )A、p- >prior=s; s->next=p; p->prior->next=s; s->prior=p->prior; B、p- >prior=s; p->prior->next=s; s->next=p; s->prior=p->prior; C、s->next=p; s->prior=p->prior; p->prior=s; p->right->next=s; D、s->next=p; s->prior=p->prior; p->prior->next=s; p->prior=s; 31、在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行( B 与链表的长度有关。 )操作www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、删除单链表中的第一个元素 B、删除单链表中的最后一个元素 C、在单链表第一个元素前插入一个新元素 D、在单链表最后一个元素后插入一个新元素 32、与单链表相比,双链表的优点之一是( D )。 A、插入、删除操作更简单 B、可以进行随机访问 C、可以省略表头指针或表尾指针 D、顺序访问相邻结点更灵活 33、串是一种特殊的线性表,其特殊性体现在( B ) A、可以顺序存储 B、数据元素是一个字符 C、可以链式存储 D、数据元素可以是多个字符 34、若已知一个栈的进栈序列是1,2,3,…,n,其输出序列为p1, p2, p3,…, pn。若p1=n,则pi(1www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、i B、n=i C、n-i+1 D、不确定 35、若已知一个栈的进栈序列是1,2,3,…,n,其输出序列为p1, p2, p3,…, pn。若pn=n,则pi(1A、i B、n=i C、n-i+1 D、不确定 36、若已知一个栈的进栈序列1,2,3,…,n,其输出序列为p1, p2, p3,…, pn。若pn=n,若p1=3,则p2( A ) A、可能是2 B、一定不是2 C、可能是1 D、一定是1 37、若已知一个栈的进栈序列p1, p2, p3,…, pn,输出序列是1,2,3,…,n。若p3=1,则p1( C ) A、可能是2 B、一定是2 C、不可能是2 D、不可能是3 38、判定一个顺序栈st(最多元素为MaxSize)为空的条件是( B ) A、st.top!=0 B、st.top==0 C、st.top!=MaxSize D、st.top==MaxSize 39、判定一个顺序栈st(最多元素为MaxSize)为栈满的条件是( D ) A、st.top!=0 B、st.top==0 C、st.top!=MaxSize D、st.top==MaxSize 40、判定一个环形队列qu(最多元素为MaxSize)为空的条件是( C ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、qu.rear-qu.front==MaxSize B、qu.rear-qu.front-1==MaxSize C、qu.front== qu.rear D、qu.front==qu.rear+1 41、判定一个环形队列qu(最多元素为MaxSize)为满队列的条件是( A ) A、(qu.rear+1)% MaxSize ==qu.front B、qu.rear-qu.front-1==MaxSize C、qu.front== qu.rear D、qu.front==qu.rear+1 42、环形顺序队列中是否可以插入下一个元素,( A ) A、与队头指针和队尾指针的值有关 B、只与队尾指针的值有关,与队头指针的值无关 C、只与数组大小有关,与队首指针和队尾指针的值无关 D、与曾经进行过多少次插入操作有关 43、在一个链队中,假设f和r分别为队头和队尾指针,则插入s所指结点的运算是( B ) A、f->next=s; f=s; B、r->next=s; r=s; C、s->next=r; r=s; D、s->next=s; r=s; www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 44、( D )是C语言中”abcd321ABCD”的子串。 A、abcd B、321AB C、”abcABC” D、”21AB” 45、在一个链队中,假设f和r分别为队头和队尾指针,则删除一个结点的运算是( C ) A、r=f->next B、r=r->next C、f=f->next D、f=r->next 46、设有两个串p和q,求q在p中首次出现的位置的运算称作( B ) A、连接 B、模式匹配 C、求子串 D、求串长 47、串是( D ) A、一些符号构成的序列 B、一些字母构成的序列 C、一个以上的字符构成的序列 D、任意有限个字符构成的序列 48、在一个具有n个单元的顺序栈中,假定以地址底端作为栈底,以top作为栈顶指针,则当作退栈处理时,top变化为( C ) A、top不变 B、top+=n C、top-- D、top++ 49、若线性表采用链式存储,则表中各元素的存储地址是( C ) www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、必须是连续的 B、部分地址是连续的C、一定是不连续的D、不一定连续 50、( D )不是线性表的特性。 A、除第一个元素之外,每个元素都有前驱 B、除最后一个元素外,每个元素都有后继 C、线性表是数据的有限序列 D、线性表的长度为n,且n≠0 51、下列关于线性表存储结构的叙述中正确的是( D )。 A、链表中的元素一定存放在不连续的存储空间里 B、链表中的元素一定存放在连续的存储空间里 C、长度变化频繁的线性表最好采用顺序存储结构 D、链表不能进行随机存取 52、以下( C )不是栈的基本运算。 A、从栈顶删除一个元素 B、判断一个栈是否为空 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、在栈中的第i个元素之前插入一个新元素 D、读取栈顶元素的值 53、设计一个判别表达式中左、右括号是否配对出现的算法,采用( B )数据结构最佳。 A、线性表的顺序存储结构 B、栈 C、队列 D、线性表的链式存储结构 54、在进栈运算时,应先判别栈是否( B )。 A、 空 B、 满 C、 上溢 D、 下溢 55、在作出栈运算时应先判别栈是否( A )。 A、 空 B、 满 C、 上溢 D、 下溢 56、若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为多少?( B ) A、 1和 5 B、 2和4 C、 4和2 D、 5和1 58、在计算递归函数时,如不使用递归过程,则一般情况下必须借助于( A )数据结构。 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info A、栈 B、 树 C、 双向队列 D、广义表 59、设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为( D )。 A、front=front+1 B、front=(front+1)% m C、rear=(rear+1)%m D、front=(front+1)%(m+1) 60、线性表的顺序存储结构是一种( A )的存储结构。 A、随机存储 B、顺序存储 C、索引存取 D、散列存取 61、在顺序表上做增、删结点运算的平均时间复杂度是( B ). A、O(1) B、O(n ) C、O(n2 ) D、O(log2n ) 62、在顺序表中,只要知道( D ),就可以在相同的时间内求出任一结点的存储地址。 A、开始结点 B、终端结点 C、向量大小 D、基地址和结点大小 63、在非空线性表中,有且只有一个直接前驱和一个直接后继的结点是(C )。 A、开始结点 B、终端结点 C、内部结点 D、所有结点 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 64、顺序表中逻辑上相邻的结点的物理位置为( A )。 A、一定相邻 B、不必相邻 C、按某种规律排列 D、不要求 65、在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是(B )。 A、O(1) B、O(n ) C、O(n2 ) D、O(log2n ) 66、在( B )运算中,使用顺序表比链表好。 A、插入 B、根据序号查找 C、删除 D、根据元素值查找 67、利用双向链表作线性表的存储结构的优点是( B )。 A、便于单向进行插入和删除的操作 B、便于双向进行插入和删除的操作 C、节省空间 D、便于销毁结构释放空间 68、一个字串在包含它的主串中的位置是指( D )。 A、子串的最后那个字符在主串中的位置 B、子串的最后那个字符在主串中首次出现的位置 C、子串的第一个字符在主串中的位置 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info D、子串的第一个字符在主串中首次出现的位置 69、对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为( C ) A、顺序表 B、用头指针表示的循环单链表 C、用尾指针表示的循环单链表 D、单链表 70、有一个含头结点的双向循环链表,头指针为head, 则其为空的条件是(C ) A、 head->priro==NULL B、 head->next==NULL C、head->next==head D、 head->next-> priro==NULL 71、一维数组和线性表的区别是( A ) A、前者长度固定,后者长度可变 B、后者长度固定,前者长度可变 C、两者长度均固定 D、 两者长度均可变 72、二维数组M的元素是4个字符(每个字符占一个存储单元)组成的串,行下标i的范围从0到4,列下标j的范围从0到5,M按行存储时元素M[3][5]的起始地址与M按列存储时元素( B )的起始地址相同。 A、M[2][4] B、M[3][4] C、M[3][5] D、M[4][4] www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 73、数组A中,每个元素的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,存放该数组至少需要的单元数是( C ) A、80 B、100 C、240 D、270 73、数组A中,每个元素的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,该数组按行存放时,元素A[8][5]的起始地址为( C ) A、SA+141 B、SA+144 C、SA+222 D、SA+225 74、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a1,1为第一个元素,其存储地址为1,每个元素占1个地址空间,则a8,5的地址为( B ) A、13 B、33 C、18 D、40 75、一个n*n的对称矩阵,如果以行或列为主序压缩放入内存,则容量为( C ) A、n*n B、n*n/2 C、n*(n+1)/2 D、(n+1)2/2 76、稀疏矩阵一般的压缩存储方法有两种,如( C ) A、二维数组合三维数组 B、三元组合散列 C、三元组和十字链表 D、散列和十字链表 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info 77、广义表((a),a)的表头是(a),表尾是( C) A、a B、b C、(a) D、((a)) 78、广义表((a,b,c,d))的表尾是( B ) A、a B、( ) C、(a,b,c,d) D、((a,b,c,d)) 79、广义表((a,b,c,d))的长度是( A ) A、1 B、2 C、3 D、4 80、已知广义表L=((x,y,z),(u,t,w)),从L表中取出原子t的运算是( C ) A、head(tail(tail(L))) B、tail(head(head(tail(L)))) C、head(tail(head(tail(L)))) D、head(head(tail(tail(L)))) 81、若广义表A=(a,b,(c,d),(e,(f,g))),则进行head(tail(head(tail(tail(A)))))的结果是( D ) A、(g) B、(d) C、(c) D、d 82、对稀疏矩阵进行压缩存储目的是( C ) A、便于进行矩阵运算 B、便于输入和输出 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info C、节省存储空间 D、降低运算的时间复杂度 83、设广义表L=((a,b,c)),则L的长度和深度分别为( C ) A、 1和1 B、1和3 C、1和2 D、2和3 84、在三对角矩阵中,非零元素的行i和列标j的关系是( D ) A、i>j B、i==j C、i A、i(i+1)/2+j B、i(i+1)/2+j-1 C、i(i+1)/2+j+1 D、j(j+1)/2+i 86、广义表(( ),( ))的深度为( C ) A、0 B、1 C、2 D、3 87、所谓稀疏矩阵指的是( C )。 A、零元素个数较多的矩阵 www.haizhizc.com |www.qdrbs.com|www.hanyu086.com|www.ouip88.info B、零元素个数占矩阵元素总个数一半的矩阵 C、零元素个数远远多于非零元素个数且分布没有规律的矩阵 D、包含有零元素的矩阵 因篇幅问题不能全部显示,请点此查看更多更全内容