数据结构(C语言版)选择`填空题
- 格式:doc
- 大小:42.50 KB
- 文档页数:16
数据结构c语言期末考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性结构和非线性结构的区别在于()。
A. 结构中元素的个数B. 结构中是否包含子结构C. 结构中元素之间是否有一对一关系D. 结构中元素之间是否有一对多关系答案:C2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。
A. 存储密度高B. 存储密度低C. 插入和删除操作快D. 存储空间可以动态分配答案:A3. 在一个长度为n的顺序表中,删除第i个元素(1≤i≤n)时,需要移动的元素个数为()。
A. i-1B. n-iC. n-i+1D. n-i-1答案:B4. 栈的运算遵循()原则。
A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C5. 在二叉树的前序遍历中,访问顺序为()。
A. 根-左-右B. 左-根-右C. 左-右-根D. 右-左-根答案:A6. 哈希表的冲突解决方法中,链地址法是()。
A. 将所有元素存储在同一个存储单元B. 将所有元素存储在同一个链表中C. 将所有元素存储在同一个数组中D. 将所有元素存储在同一个链表的同一个位置答案:B7. 在图的遍历中,深度优先搜索(DFS)和广度优先搜索(BFS)的主要区别在于()。
A. 遍历的顺序不同B. 遍历的起点不同C. 遍历的路径不同D. 遍历使用的存储结构不同答案:D8. 快速排序算法的时间复杂度为()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(logn)答案:B9. 归并排序算法的时间复杂度为()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(logn)答案:B10. 在二叉搜索树中,查找一个元素的时间复杂度为()。
A. O(n)B. O(logn)C. O(n^2)D. O(1)答案:B二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的时间复杂度通常用______来描述。
答案:大O符号2. 线性表的两种基本操作是插入和______。
数据结构c语言版试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 若有一个结构体数组,下列哪个函数可以用来初始化数组中的每个元素?A. memsetB. memcpyC. strcpyD. bzero答案:A3. 在C语言中,以下哪个函数用于动态分配内存?A. mallocB. callocC. reallocD. all of the above答案:D4. 对于一个链表,以下哪个操作是正确的?A. 插入节点B. 删除节点C. 遍历链表D. all of the above答案:D5. 在C语言中,以下哪个函数用于释放动态分配的内存?A. freeB. mallocC. callocD. realloc答案:A二、填空题(每题3分,共15分)1. 结构体定义的关键字是______。
答案:struct2. 在C语言中,动态分配内存失败时,malloc函数返回______。
答案:NULL3. 单链表的头节点指针通常初始化为______。
答案:NULL4. 双向链表中,每个节点包含______个指针。
答案:两个5. 树的深度优先遍历包括______、中序遍历和后序遍历。
答案:前序遍历三、简答题(每题5分,共20分)1. 请简述C语言中结构体和联合体的区别。
答案:结构体(struct)可以包含不同类型的数据,并且可以有多个实例;联合体(union)可以包含不同类型的数据,但是只能有一个实例,即在任意时刻只能存储其中一个成员的值。
2. 动态内存分配的优点是什么?答案:动态内存分配允许程序在运行时根据需要分配内存,这样可以更有效地使用内存资源,并且可以创建大小不固定的数据结构。
3. 链表相比于数组有哪些优点?答案:链表的优点包括动态大小,可以灵活地插入和删除节点,不需要预先知道数据的大小。
数据结构(C语言版)选择、填空题一概论选择1、( B)是数据的基本单位。
A、数据结构B、数据元素C、数据项D、数据类型2、以下说法不正确的是(A )。
A、数据结构就是数据之间的逻辑结构。
B、数据类型可看成是程序设计语言中已实现的数据结构。
C、数据项是组成数据元素的最小标识单位。
D、数据的抽象运算不依赖具体的存储结构。
3、学习数据结构主要目的是(C )。
A、处理数值计算问题B、研究程序设计技巧C、选取合适数据结构,写出更有效的算法。
D、是计算机硬件课程的基础。
4、一般而言,最适合描述算法的语言是( C)。
A、自然语言B、计算机程序语言C、介于自然语言和程序设计语言之间的伪语言D、数学公式5、通常所说的时间复杂度指(B )。
A、语句的频度和B、算法的时间消耗C、渐近时间复杂度D、最坏时间复杂度6、A算法的时间复杂度为O(n^3),B算法的时间复杂度为O(2^n),则说明(B )。
A、对于任何数据量,A算法的时间开销都比B算法小B、随着问题规模n的增大,A算法比B算法有效C、随着问题规模n的增大,B算法比A算法有效D、对于任何数据量,B算法的时间开销都比A算法小填空1、数据的(存储)结构依赖于计算机语言.2、数据的逻辑结构可分为线性结构和(非线性)结构。
3、算法的时间复杂度与问题的规模有关外,还与输入实例的(初始状态)有关。
4、常用的四种存储方法是什么?顺序存储方法、链式存储方法、索引存储方法和散列存储方法5、常见的数据的逻辑结构有哪两种?线性结构和逻辑结构6、一般,将算法求解问题的输入量称为(问题的规模)。
二线性表选择题1、以下关于线性表的说法不正确的是( C)。
A、线性表中的数据元素可以是数字、字符、记录等不同类型。
B、线性表中包含的数据元素个数不是任意的。
C、线性表中的每个结点都有且只有一个直接前趋和直接后继。
D、存在这样的线性表:表中各结点都没有直接前趋和直接后继。
2、线性表的顺序存储结构是一种( A)的存储结构。
“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。
A. HL=ps p一>next=HLB. p一>next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一>next=HL一>next;HL一>next=p;2.n个顶点的强连通图中至少含有( )。
A.n—l条有向边B.n条有向边C.n(n—1)/2条有向边D.n(n一1)条有向边3.从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A.O(1)B.O(n)C.O(1Ogzn)D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )。
A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。
A.整形B.引用型C.指针型D.常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。
A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为——、——、——和——四种。
2.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为——域和——域。
3.——中缀表达式 3十x*(2.4/5—6)所对应的后缀表达式为————。
4.在一棵高度为h的3叉树中,最多含有——结点。
5.假定一棵二叉树的结点数为18,则它的最小深度为——,最大深度为——· 6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定——该结点的值,右子树上所有结点的值一定——该结点的值。
7.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层——调整,直到被调整到——位置为止。
数据结构试题及答案c语言版一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是正确的链表定义?A. struct Node { int data; struct Node *next; };B. struct Node { int data; Node *next; };C. struct Node { int data; struct Node *next; } *Node;D. struct Node { int data; Node *next; };答案:A2. 下列关于栈的描述中,错误的是?A. 栈是一种后进先出(LIFO)的数据结构。
B. 栈的插入操作称为push。
C. 栈的删除操作称为pop。
D. 栈可以存储任意数量的数据。
答案:D3. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A4. 下列关于队列的描述中,正确的是?A. 队列是一种先进先出(FIFO)的数据结构。
B. 队列只能从队尾进行插入操作。
C. 队列的插入操作称为pop。
D. 队列的删除操作称为push。
答案:A5. 在C语言中,以下哪个函数用于创建一个动态数组?A. mallocB. callocC. reallocD. all of the above答案:D6. 下列关于二叉树的描述中,错误的是?A. 二叉树的每个节点最多有两个子节点。
B. 二叉树的子节点被称为左子树和右子树。
C. 二叉树的遍历方式包括前序、中序、后序。
D. 二叉树的每个节点只能有一个子节点。
答案:D7. 在C语言中,以下哪个函数用于释放动态分配的内存?A. freeB. mallocC. callocD. realloc答案:A8. 下列关于图的描述中,错误的是?A. 图是由顶点和边组成的数据结构。
B. 图的边可以是有向的,也可以是无向的。
C. 图的顶点可以是孤立的,没有边与之相连。
吉首大学题库一、一、单选题(每题 2 分,共20分)1. 1.对一个算法的评价,不包括如下()方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2. 2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。
A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3. 3.对线性表,在下列哪种情况下应当采用链表表示?( )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4. 4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35. 5.AOV网是一种()。
A.有向图B.无向图C.无向无环图D.有向无环图6. 6.采用开放定址法处理散列表的冲突时,其平均查找长度()。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.7.若需要利用形参直接访问实参时,应将形参变量说明为()参数。
A.值B.函数C.指针D.引用8.8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的()。
A.行号B.列号C.元素值D.非零元素个数9.9.快速排序在最坏情况下的时间复杂度为()。
A.O(log2n) B.O(nlog2n) C.0(n) D.0(n2)10.10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、二、运算题(每题 6 分,共24分)1. 1.数据结构是指数据及其相互之间的______________。
当结点之间存在M对N(M:N)的联系时,称这种结构为_____________________。
第一章绪论一、选择题1.组成数据的基本单位是()(A)数据项(B)数据类型(C)数据元素(D)数据变量2.数据结构是研究数据的()以及它们之间的相互关系。
(A)理想结构,物理结构(B)理想结构,抽象结构(C)物理结构,逻辑结构(D)抽象结构,逻辑结构3.在数据结构中,从逻辑上可以把数据结构分成()(A)动态结构和静态结构(B)紧凑结构和非紧凑结构(C)线性结构和非线性结构(D)内部结构和外部结构4.数据结构是一门研究非数值计算的程序设计问题中计算机的(①)以及它们之间的(②)和运算等的学科。
① (A)数据元素(B)计算方法(C)逻辑存储(D)数据映像② (A)结构(B)关系(C)运算(D)算法5.算法分析的目的是()。
(A)找出数据结构的合理性(B)研究算法中的输入和输出的关系(C)分析算法的效率以求改进(D)分析算法的易懂性和文档性6.计算机算法指的是(①),它必须具备输入、输出和(②)等5个特性。
① (A)计算方法(B)排序方法(C)解决问题的有限运算序列(D)调度方法② (A)可执行性、可移植性和可扩充性(B)可行性、确定性和有穷性(C)确定性、有穷性和稳定性(D)易读性、稳定性和安全性二、判断题1.数据的机内表示称为数据的存储结构。
()2.算法就是程序。
()3.数据元素是数据的最小单位。
()4.算法的五个特性为:有穷性、输入、输出、完成性和确定性。
()5.算法的时间复杂度取决于问题的规模和待处理数据的初态。
()三、填空题1.数据逻辑结构包括________、________、_________ 和_________四种类型,其中树形结构和图形结构合称为_____。
2.在线性结构中,第一个结点____前驱结点,其余每个结点有且只有______个前驱结点;最后一个结点______后续结点,其余每个结点有且只有_______个后续结点。
3.在树形结构中,树根结点没有_______结点,其余每个结点有且只有_______个前驱结点;叶子结点没有________结点,其余每个结点的后续结点可以_________。
一、单项选择题:1、树形结构不具备这样的特点:()A. 每个节点可能有多个后继(子节点)B. 每个节点可能有多个前驱(父节点)C. 可能有多个内节点(非终端结点)D. 可能有多个叶子节点(终端节点)2、二叉树与度数为2的树相同之处包括()。
A. 每个节点都有1个或2个子节点B. 至少有一个根节点C. 至少有一个度数为2的节点D. 每个节点至多只有一个父节点3、一棵完全二叉树有999 个结点,它的深度为()。
A.9 B.10 C.11 D.124、在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行()A. s->next=p;p->next=s;B. s->next=p->next;p->next=s;C. s->next=p->next;p=s;D. p->next=s;s->next=p;5、对于一棵具有n个结点、度为5的树来说,()A. 树的高度至多是n-3B. 树的高度至多是n-4C. 树的高度至多是nD. 树的高度至多是n-56、在顺序队列中,元素的排列顺序()。
A. 由元素插入队列的先后顺序决定B. 与元素值的大小有关C. 与队首指针和队尾指针的取值有关D. 与数组大小有关7、串是一种特殊的线性表,其特殊性体现在()。
A.可以顺序存储 B.数据元素是一个字符C.可以链式存储 D.数据元素可以是多个字符若8、顺序循环队列中(数组的大小为 6),队头指示 front 和队尾指示 rear 的值分别为 3和 0,当从队列中删除1个元素,再插入2 个元素后,front和 rear的值分别为()。
A.5 和1 B.2和4 C.1和5 D.4 和29、一棵完全二叉树上有1001 个结点,其中叶子结点的个数为()。
A.250 B.500 C.254 D.50110、已知一个有向图如下图所示,则从顶点a出发进行深度优先遍历,不可能得到的DFS序列为()。
附录习题参考答案习题1参考答案1.1.选择题(1). A. (2). A. (3). A. (4). B.,C. (5). A. (6). A. (7). C. (8). A. (9). B. (10.)A.1.2.填空题(1). 数据关系(2). 逻辑结构物理结构(3). 线性数据结构树型结构图结构(4). 顺序存储链式存储索引存储散列表(Hash)存储(5). 变量的取值范围操作的类别(6). 数据元素间的逻辑关系数据元素存储方式或者数据元素的物理关系(7). 关系网状结构树结构(8). 空间复杂度和时间复杂度(9). 空间时间(10). Ο(n)1.3 名词解释如下:数据:数据是信息的载体,是计算机程序加工和处理的对象,包括数值数据和非数值数据。
数据项:数据项指不可分割的、具有独立意义的最小数据单位,数据项有时也称为字段或域。
数据元素:数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理,一个数据元素可由若干个数据项组成。
数据逻辑结构:数据的逻辑结构就是指数据元素间的关系。
数据存储结构:数据的物理结构表示数据元素的存储方式或者数据元素的物理关系。
数据类型:是指变量的取值范围和所能够进行的操作的总和。
算法:是对特定问题求解步骤的一种描述,是指令的有限序列。
1.4 语句的时间复杂度为:(1) Ο(n2)(2) Ο(n2)(3) Ο(n2)(4) Ο(n-1)(5) Ο(n3)1.5 参考程序:main(){int X,Y,Z;scanf(“%d, %d, %d”,&X,&Y,Z);if (X>=Y)if(X>=Z)if (Y>=Z){ printf(“%d, %d, %d”,X,Y,Z);}else{ printf(“%d, %d, %d”,X,Z,Y);}else{ printf(“%d, %d, %d”,Z,X,Y);}elseif(Z>=X)if (Y>=Z){ printf(“%d, %d, %d”,Y,Z,X);}else{ printf(“%d, %d, %d”,Z,Y,X);}else{ printf(“%d, %d, %d”,Y,X,Z);}}1.6 参考程序:main(){int i,n;float x,a[],p;printf(“\nn=”);scanf(“%f”,&n);printf(“\nx=”);scanf(“%f”,&x);for(i=0;i<=n;i++)scanf(“%f ”,&a[i]);p=a[0];for(i=1;i<=n;i++){ p=p+a[i]*x;x=x*x;}printf(“%f”,p)’}习题2参考答案2.1选择题(1). C. (2). B. (3). B. (4). B. 5. D. 6. B. 7. B. 8. A. 9. A. 10. D.2.2.填空题(1). 有限序列(2). 顺序存储和链式存储(3). O(n) O(n)(4). n-i+1 n-i(5). 链式(6). 数据指针(7). 前驱后继(8). Ο(1) Ο(n)(9). s->next=p->next; p->next=s ;(10). s->next2.3. 解题思路:将顺序表A中的元素输入数组a,若数组a中元素个数为n,将下标为0,1,2,…,(n-1)/2的元素依次与下标为n,n-1,…, (n-1)/2的元素交换,输出数组a的元素。
数据结构(C语言版)选择、填空题一概论选择1、( )是数据的基本单位。
A、数据结构B、数据元素C、数据项D、数据类型2、以下说法不正确的是( )。
A、数据结构就是数据之间的逻辑结构。
B、数据类型可看成是程序设计语言中已实现的数据结构。
C、数据项是组成数据元素的最小标识单位。
D、数据的抽象运算不依赖具体的存储结构。
3、学习数据结构主要目的是( )。
A、处理数值计算问题B、研究程序设计技巧C、选取合适数据结构,写出更有效的算法。
D、是计算机硬件课程的基础。
4、一般而言,最适合描述算法的语言是( )。
A、自然语言B、计算机程序语言C、介于自然语言和程序设计语言之间的伪语言D、数学公式5、通常所说的时间复杂度指( )。
A、语句的频度和B、算法的时间消耗C、渐近时间复杂度D、最坏时间复杂度6、A算法的时间复杂度为O(n^3),B算法的时间复杂度为O(2^n),则说明( )。
A、对于任何数据量,A算法的时间开销都比B算法小B、随着问题规模n的增大,A算法比B算法有效C、随着问题规模n的增大,B算法比A算法有效D、对于任何数据量,B算法的时间开销都比A算法小填空1、数据的( )结构依赖于计算机语言.2、数据的逻辑结构可分为线性结构和( )结构。
3、算法的时间复杂度与问题的规模有关外,还与输入实例的( )有关。
4、常用的四种存储方法是什么5、常见的数据的逻辑结构有哪两种6、一般,将算法求解问题的输入量称为( )。
二线性表选择题1、以下关于线性表的说法不正确的是( )。
A、线性表中的数据元素可以是数字、字符、记录等不同类型。
B、线性表中包含的数据元素个数不是任意的。
C、线性表中的每个结点都有且只有一个直接前趋和直接后继。
D、存在这样的线性表:表中各结点都没有直接前趋和直接后继。
2、线性表的顺序存储结构是一种( )的存储结构。
A、随机存取B、顺序存取C、索引存取D、散列存取3、在顺序表中,只要知道( ),就可在相同时间内求出任一结点的存储地址。
A、基地址B、结点大小C、向量大小D、基地址和结点大小4、在等概率情况下,顺序表的插入操作要移动( )结点。
A、全部B、一半C、三分之一D、四分之一5、在( )运算中,使用顺序表比链表好。
A、插入B、删除C、根据序号查找D、根据元素值查找6、在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是( )。
A、 O(1)B、 O(n)C、 O(n^2)D、 O(log2n)填空题1、线性表是一种典型的( )结构。
2、在一个长度为n的顺序表中删除第i个元素,要移动( )个元素3、如果要在第i个元素前插入一个元素,要后移( )个元素。
4、采用( )存储结构的线性表叫顺序表。
5、顺序表中逻辑上相邻的元素的物理位置( )。
6、在无头结点的单链表中,第1个结点的地址存放在头指针中,其他结点的存储地址存放在( )结点的next域中。
三栈和队列选择1、栈与一般的线性表的区别在于( )。
A、数据元素的类型不同B、运算是否受限制C、数据元素的个数不同D、逻辑结构不同2、一个栈的入栈序列是abcde,则栈的不可能的输出序列是( )。
A、EdcbaB、 decbaC、 dceabD、 abcde3、在对栈的操作中,能改变栈的结构的是( )。
A、InitStack(S)B、StackEmpty(S)C、StackTop(S)D、StackFull(S)4、顺序栈的类型定义如下:typedef maxsize 64;typedef struct {int data[maxsize];int top;}seqstack;seqstack *s;顺序栈s栈满条件是( )。
(A)s->top<>0(B)s->top==maxsize(C)s->top==maxsize-1(D)S->top!=maxsize5、向一个栈顶指针为HS的链栈中将一个S指针所指的结点入栈,执行( )。
A、HS->next=s;B、S->next=HS->next;HS->next=s;C、S->next=HS->next;HS=s;D、S->next=HS;HS=HS->next;6、若已知一个栈的入栈序列是1,2,3,…,n,其输出序列是p1,p2,p3,…,pn,若p1=n,则pi=( )。
A、IB、n-IC、n-i+1D、不确定填空1、在栈中,可进行插入和删除操作的一端称( )。
2、在栈的出栈操作中,要先判断栈是否空,否则会产生( )现象。
3、当程序中同时使用( )个栈时,让它们共享同一向量空间可减少上溢的发生。
4、栈的特点是( )。
5、由于链栈的操作只在链表头部进行,所以没有必要设置( )结点。
6、若内存空间充足,( )栈可不定义栈满运算。
四串选择1、串是一种特殊的线性表,其特殊性体现在( )。
A、可以顺序存储B、数据元素是一个字符C、可以链接存储D、数据元素可以是多个字符2、有两个串P和Q,求P和Q中首此出现的位置的运算称( )。
A、连接B、模式匹配C、求子串D、求串长3、设串s1='ABCDEFG',s2='PQRST',函数con(x,y)返回x和y串的连接串,subs(s,I,j)返回串s的从序号i的字符开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1,2,len(s2)),subs(s1,len(s2),2)))的结果串是( )。
A、BCDEF B、BCDEFG C、BCPQRST D、BCDEFEF4、在串的模式匹配中,一般( )。
A、有效位移的个数大于合法位移的个数B、有效位移的个数等于合法位移的个数C、有效位移的个数小于合法位移的个数D、有效位移和合法位移无关5、顺序串中,根据空间分配方式的不同,可分为( )。
A、直接分配和间接分配B、静态分配和动态分配C、顺序分配和链式分配D、随机分配和固定分配填空1、在空串和空格串中,长度不为0的是( )。
2、按存储结构不同,串可分为( )。
3、C语言中,以字符( )表示串值的终结。
4、在链串中,为了提高存储密度,应该增大( ).5、假设每个字符占1个字节,若结点大小为4的链串的存储密度为50%,则其每个指针占( )个字节。
五多维数组和广义表选择1、稀疏矩阵的一般的压缩方法有( )。
A、二维数组B、广义表C、三元组表D、一维数组2、设矩阵A是一个对称矩阵,为了节省空间,将其下三角部分按行优先存放在一维数组B中。
对下三角矩阵中任一元素aij(设矩阵A是一个对称矩阵,为了节省空间,将其下三角部分按行优先存放在一维数组B中,对下三角矩阵中任一元素aij(i>=j),在一维数组B中下标K的值是( )。
A、i(i-1)/2+j-1B、i(i-1)/2+jC、i(i+1)/2+j-1D、i(i+1)/2+j3、在稀疏矩阵的三元组表表示法中,每个三元组表示( )。
(A)矩阵中数据元素的行号、列号和值(B)矩阵中非零元素的值矩阵中非零元素的行号和列号(D)矩阵中非零元素的行号、列号和值4、对稀疏矩阵进行压缩存储是为了( )。
(A)便于进行矩阵运算(B)便于输入和输出节约存储空间(D)降低运算的时间复杂度5、广义表是线性表的推广,它们之间的区别在于( )。
A、能否使用子表B、能否使用原子项C、表的长度D、是否能为空6、在广义表中,限制了表中成分递归,但没有限制共享的是( )。
A、纯表B、再入表C、递归表D、线性表填空1、n维数组中的每个元素都最多有( )个直接前趋。
2、对于一个一维数组A[12],若一个数据元素占用字节数为S,首地址为1,则A[i](i>=0)的存储地址为( A ),若首地址为D,则A[i]的存储地址为( B )。
3、已知二维数组A[m][n]采用行优先顺序存储,每个元素占k个存储单元,并且第一个元素的存储地址LOC(A[0][0]),则A[i][j]的地址是( )。
4、在多维数组中,数据元素的存放地址直接可通过地址计算公式计算出。
因此,数组是一种( )存取结构。
5、矩阵的压缩存储就是为多个相同的非零元素分配( )个存储空间,不为零元素分配空间。
6、一般,特殊矩阵按规律压缩存储到一个向量中后,能( )存取。
六树选择题1、在树中,互为堂兄弟的结点拥有相同的( )。
A、双亲B、祖先C、路径D、孩子2、树最适合用来表示。
A、有序数据元素B、无序数据元素C、元素之间具有分支层次关系的数据D、元素之间无联系的数据3、已知二叉树如下图所示,此二叉树的顺序存储结构是:( )。
○A/○C/ \○F ○GA、 1 2 3 4┌─┬─┬─┬─┐│ A│ C│ F│ G│└─┴─┴─┴─┘B、 1 2 3 4 5┌─┬─┬─┬─┬─┐│ 4│ A│ C│ F│ G│└─┴─┴─┴─┴─┘C、 0 1 2 3 4 5┌─┬─┬─┬─┬─┬─┐│ 4│ A│ C│ │ F│ G│└─┴─┴─┴─┴─┴─┘D、 0 1 2 3 4┌─┬─┬─┬─┬─┐│ A│ C│ │ F│ G│└─┴─┴─┴─┴─┘4、在一棵高度为h的满四叉树中,结点总数为( )。
A、4^h-1B、(4^h-1)/2C、(4^h-1)/4D、4^h5、若一棵二叉树具有10个度为2的结点,则该二叉树的度为0的结点个数是( )。
A. 9B. 11C. 12D. 不确定6、按二叉树的定义,具有3个结点的二叉树有( ) 种。
A、3B、4C、5D、6填空1、在树中,度为( )的结点称为叶子。
2、在树中,除跟结点外,其他结点都有且只有一个( )结点。
3、有100个结点的树有( )条边。
4、若将树中的每个结点的各子树看成从左到右有次序,则该树为( )树。
5、一棵二叉树有67个结点,这些结点的度要么是0,要么是2。
这棵二叉树中度为2的结点有( )个。
6、深度为K的完全二叉树至少有2^(k-1)个结点,至多有2^(k-1)-2个结点,若按自上而下,从左到右次序给结点编号(从1开始),则编号最小的叶子结点的编号是( )。
七图选择1、设G1=(V1,E1)和G2=(V2,E2)为两个图,如果V2包含V1,E2包含E1,则称( )。
A、G1是G2的子图B、G1是G2的连通分量C、G2是G1的连通分量D、G2是G1的子图2、设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A、5B、6C、7D、83、下面关于图的存储的叙述中,哪一个是正确的。
( )A.用邻接矩阵法存储图,占用的存储空间数只与图中结点个数有关,与边数无关B.用邻接矩阵法存储图,占用的存储空间数只与图中边数有关,与结点个数无关C.用邻接表存储图,占用的存储空间数只与图中结点个数有关,与边数无关D.用邻接表存储图,占用的存储空间数只与图中边数有关,与结点个数无关4、在图的表示法中,表示形式唯一的是( )。