电大《数据结构(本)》复习题及答案.pdf_第1页
电大《数据结构(本)》复习题及答案.pdf_第2页
电大《数据结构(本)》复习题及答案.pdf_第3页
电大《数据结构(本)》复习题及答案.pdf_第4页
电大《数据结构(本)》复习题及答案.pdf_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据结构 本 复习题 一 单项选择题 每小题2分 共30分 1 深度为5的完全二叉树共有20个结点 则第5层上有 个结点 根所在结点为第一层 A 3 B 8 C 5 D 6 2 已知一个图的边数为ii 则该图的所有顶点的度数之和为 A 2m B m C 2m 1 D m 2 3 数据结构中 与所使用的计算机无关的是数据的 结构 A 物理 B 存储 C 逻辑与物理 D 逻辑 4 链表所具备的特点是 A 可以随机访问任一结点 B 占用连续的存储空间 C 插人删除不需要移动元素结点 D 可以通过下标对链表进行 直接访问 5 线性表只要以 方式存储就能进行折半查找 A 链接 B 顺序 C 关键字有序的顺序 D 二又树 6 散列查找的原理是 A 在待查记录的关键字值与该记录的存储位置之间建立确定的对 应关系 B 按待查记录的关键字有序的顺序方式存储 C 按关键字值的比较进行查找 D 基于二分查找的方法 7 对n个元素进行冒泡排序若某趟冒泡中只进行了 次元素间的 交换 则表明序列已经排好序 A 1 B 2 C 0 D n 1 8 排序过程中 每一趟从无序子表中将一个待排序的记录按其关 键字的大小放置到已经排好序的子序列的适当位置 直到全部排好序为 止 该排序算法是 A 直接插入排序 B 快速排序 C 冒泡排序 D 选择排序 9 在对一组元素 64 48 106 33 25 82 70 55 93 进行直接插入排序 时 当进行到要把第7个元素70插入到已经排好序的子表时 为找到插 人位置 需进行 次元素n的比较 指由小到大排序 A 6 B 2 C 3 D 4 10 采用顺序查找法对长度为n的线性表进行查找 不采用表尾设监 视哨的方法 最坏的情况下要进行 次元素间的比较 A n 2 B n C n 1 D n 2 11如图 若从顶点a出发按广度优先搜索法进行遍历 则可能得到 的顶点序列为 A acebdgf B abecdgf C acfedgb D abecfdg 12 元素2 4 6 8按顺序依次进栈 则该栈的不可能输出序列是 进栈出栈可以交替进行 A 8 6 4 2 B 2 4 6 8 C 4 2 8 6 D 8 6 2 4 13 排序方法中 从未排序序列中挑选元素 并将其依次放人已排 序序列 初始为空 的一端的方法 称为 排序 A 归并 B 插人 C 选择 D 快速 I4 一棵哈夫曼树总共有23个结点 该树共有 个叶结点 终端 结点 A 10 B 13 C 11 D 12 15 队列的插人操作在 进行 A 队头 B 队尾 C 队头或队尾 D 在任意指定位置 二 填空题 每小题2分 共24分 16 一棵二又树没有单分支结点 有6个叶结点 则该树总共有 个结点 17 设一棵完全二叉树 其最高层上最右边的叶结点的编号为奇 数 该叶节点的双亲结点的编号为10 该完全二又树一共有 个结点 18 按照二又树的递归定义 对二叉树遍历的常用算法有先序 三种 19 结构中的数据元素存在一对多的关系称为 结构 20 把数据存储到计算机中 并具体体现数据之间的逻辑结构称为 结构 21 结构中的数据元素存在一对一的关系称为 结构 22 如图2所示的二又树 其后序遍历序列为 23 n个元素进行冒泡法排序 通常需要进行 趟排 序 24 二叉树为二又排序的充分必要条件是其任一结点的值均大于其 左孩子的值 小于其右孩子的值 这种说法是 的 回答 正确或不正确 25 图的深度优先搜索和广度优先搜索序列不一定是唯一的 此断 言是 的 回答正确或不正确 26 根据搜索方法的不同 图的遍历有 两种方法 27 按某关键字对记录序列排序 若关键字 的记录在 排序前和排序后仍保持它们的前后关系 则排序算法是稳定的 否则是 不稳定的 三 综合题 每小题10分 共30分 28 1 利用筛选过程把序列 42 82 67 102 16 32 57 52 建成堆 小根 堆 画出该堆 不要求中间过程 2 写出对上述堆对应的完全二又树进行中序遍历得到的序列 29 设查找表为 16 15 20 53 64 7 1 用冒泡法对该表进行排序 要求升序排列 要求写出每一趟的排 序过程 2 在排序后的有序表的基础上 画出对其进行折半查找所对应的判 定树 要求以数据元素作为树结点 3 求在等概率条件下 对上述有序表成功查找的平均查找长度 30 1 设有一个整数序列 50 38 16 82 110 13 64 依次取出序列中 的数 构造一棵二叉排序树 2 利用上述二叉排序树 为了查找110 经多少次元素间的比较 能成功查到 为了查找15 经多少次元素间的比较可知道查找失败 四 程序填空题 每空2分 共16分 31 以下函数为链队列的入队操作 X为要人队的结点的数据域的 值 front rear分别是链队列的队头 队尾指针 32 以下函数在head为头指针的具有头结点的单向链表中删除第1 个结点 参考答案 一 单项选择题 每小题2分 共30分 CADCC ACACB BDCDB 二 填空题 每题2分 共24分 16 11 17 21 18 中序 后序 19 树形 20 物理 存储 21 线性 22 gdbeihfca 23 N 1 24 不正确 25 正确 26 深度优先搜索遍历 广度优先搜索遍历 27 相等 三 综合应用题 每小题10分 共30分 28 1 2 102 52 42 82 16 6 32 57 29 1 原序列16 15 20 53 64 7 15 16 20 53 7 64 15 16 20 7 53 64 15 16 7 20 53 64 15 7 16 20 53 64 7 15 16 20 53 64 2 3 平均查找长度 1 1 2 2 3 3 6 14 6 30 1 2 三次 四次 四 程序填空题 每空2分 共16分 31 1 malloc sizeof struct node 2 rear next p 3 p 32 1 jnext 3 q next 4 q next 5 p 一 单项选择题 每小题 2分 共30分 1 数据的物理结构 A 与数据的逻辑结构无关 B 仅仅包括 数据元素的表示 C 只包括数据元素间关系的表示 D 包括数据元 素的表示和关系的表示 2 从n个数中选取最大元素 A 基本操作是数据元素间的交换 B 算法的时间 复杂度是O n2 C 算法的时间复杂度是O n D 需要进行 n 1 次数据元素间的比较 3 线性表的顺序结构中 A 逻辑上相邻的元素在物理位置上不一定相邻 B 数据元素是不能随机访问的 C 逻辑上相邻的元素在物理位置上也相邻 D 进行数据元素的插入 删除效率较高 4 带头结点的单向链表为空的判断条件是 设头指针为 head A head NULL B head next NULL C head next head D head NULL 5 线性结构中数据元素的位置之间存在 的关系 A 一对一 B 一对多 C 多对多 D 每一个元素 都有 个直接前驱和一个直接后继 6 设顺序存储的线性表长度为n 要删除第i个元素 按课本的算 法 当i 移动元素的次数为3 A 3 B n 2 C n 3 D 4 7 以下说法不正确的是 A 栈的特点是后进先出 B 队列的特点是先进先出 C栈的删除操作在栈底进行 插入操作在栈顶进行 B队列的插入操作在队尾进行 删除操作在队头进行 8 一个栈的进栈序列是a h c d 则栈的不可能的出栈序列是 A adbc B bead C cbad D dcba 9 设top是一个链榜的栈顶指针 栈中每个结点由一个数据域data 和指针域next组成 设用x接收栈顶元素 则出栈操作为 A x top data top top next B top top next x top data C x top next top top data D top next top x top data 10 设有一个带头结点的链队列 队列中每个结点由一个数据域 data和指针域next组成 front和rear分别为链队列的头指针和尾指 针 要执行出队操作 用x保存出队元素的值 p为指向结点类型的指 针 可执行如下操作 p front next x p data 然后执行 A front p next B front next p next C front p D front next p 11 以下说法正确的是 A 队列是后进先出 B 栈的特点是后进后出 C 拢的删除和插入操作都只能在栈顶进行 D 队列的删除和插入操作都只能在队头进行 12 在C语言中 存储字符串 ABCD 需要占用 字节 A 4 B 2 C 5 D 3 13 串函数StrCmp abA aba 的值为 A 1 B 0 C abAaba D 1 14 设有一个10阶的对称矩阵A 采用压缩存储方式将其下三角部 分以行序为主序存储到一维数组b中 矩阵A的第一个元素为al l 数组 b的下标从1开始 则矩阵元素a5 3对应一维数组b的数组元素是 A b 18 B b 8 C b 13 D b lO 15 已知如图1所示的一个图 若从顶点a出发 按深度优先搜索法 进行遍历 则可能得到的一种顶点序列为 A abecdf B acfebd c aebcfd D aedfcb 二 填空题 每小黯2分 共24分 16 通常数据的逻辑结构包括集合 线性 四种类型 17 通常可以把某城市中各公交站点间的线路图抽象成 结构 18 设有一个单向链表 结点的指针域为next 头指针为head p 指向尾结点 为了使该单向链表改为单向循环链表 可用语句 19 循环队列的队头指针为f 队尾指针为r 当 时表明队列已空 20 设有一个链钱 栈顶指针为hs 现有一个s所指向的结点要入 栈 则可执行操作 和hs s 21 在 个链队中 f和r分别为队头和队尾指针 队结点的指针域 为next 则插入一个s所指结点的操作为 r s 22 串的两种最基本的存储方式分别是 和 23 一棵二叉树中顺序编号为i的结点 若它存在左 右孩子 则 左 右孩子编号分别为 24 两个串相等的充分必要条件是 25 一棵二叉树叶结点 终端结点 数为5 单分支结点数为2 该 树共有 个结点 26 根据搜索方法的不同 图的遍历有 两种方法 27 一个有序表 3 4 10 14 34 43 46 64 75 78 90 96 130 用折半查找法查找值为90的结点 经 次比 较后查找成功 三 综合题 每小题10分 共30分 28 1 已知某二叉树的后序遍历序列是debca 中序遍历序列是 dbeac 试画出该二叉树 2 若上述二叉树的各个结点的字符分别代表不同的整数 其中没有 相等的 并恰好使该树成为一棵二叉排序树 试给出a b c d e的 大小关系 3 给出该树的前序遍历序列 29 1 一组记录的关键字序列为 45 40 65 43 35 95 写 出利用快速排序的方法 以第一个记录为基准得到的一趟划分的结果 要求给出一趟划分中每次扫描和交换的结果 2 对序列 45 40 65 43 35 95 利用直接插入排序 写出逐 次插入过程 从第一个元素一直到第六个元素 30 1 设有查找表 5 14 2 6 18 7 4 16 3 依次取表 中数据 构造一棵二叉排序树 2 说明如何通过序列的二叉排序树得到相应序列的排序结果 四 程序填空题 每空2分 共16分 31 以下函数在a O 到a n 1 中 用折半查找算法查找关键字等于 k的记录 查找成功返回该记录的下标 失败时返回 1 完成程序中的 空格 32 以下函数为链栈的进栈操作 x是要进栈的结点的数据域 top 为钱顶指针 参考答案 一 单项选择题 每小题2芳 共30分 DCCBA CCAAB CCDCD 二 填空题 每题2分 共24分 16 树形 图状 17 图状 18 p next head 19 r f 20 在 next hs 21 r next 的 22 顺序存储 链式存储 23 2i 2i 1 24 串长度相等且对应位置的字符相等 26 深度优先搜索遍历 广度优先搜索遍历 27 4 三 结合应用题 每小题10分 共30分 28 1 2 d b e anext p rear p B rear next p p rear C p rear next rear p D rear p rear next p 6 以下说法不正确的是 A 顺序校中 钱满时再进行进校操作称为 上溢 B 顺序校中 找空时再作出校校操作称为 下溢 C 顺序队列中 当尾指针已经超越队列存储空间的上界 则一定是 队列已满 D 顺序队列中 队列的头指针和尾指针均超越队列存储空间的上 界 则队列已空 7 设有一个20阶的对称矩阵A 采用压缩存储方式 将其下三角部 分以行序为主序存储到一维数组中 矩阵A的第一个元素为a11 数组b的 下标从1开始 则矩阵元素a8 5在一维数组b中的下标是 A 30 B 28 C 40 D 33 8 深度为5的完全二叉树第5层上有4个结点 该树一共有 个结 点 A 28 B 30 C 31 D 19 9 已知一个图的所有顶点的度数之和为m 则m一定不可能是 A 4 B 8 C 12 D 9 10 以下说法正确的是 A 连通图G的生成树中可以包含回路 B 连通图G的生成树可以是 不连通的 C 连通图G的生成树一定是唯一的 D 连通图G的生成树一定是 连通而不包含回路的 11 对n个元素进行冒泡排序 通常要进行n l趟冒泡 在第j趟冒泡中 共要进行 次元素间的比较 A j B j l C n j D n j l 12 在排序过程中 可以有效地减少一趟排序过程中元素间的比较 次数的算法是 A 冒泡 B 选择 C 直接插入 D 折半插入 13 如图若从顶点a出发按深度优先搜索法进行遍历 则可能得到的 顶点序列为 A aebCfd B abedCf C aCebdf D aCfbde 14 一棵哈夫曼树有n个叶子结点 终端结点 该树总共有 个结 点 A 2n 2 B 2n l C 2n D 2n十2 15 数据的 结构与所使用的计算机无关 A 逻辑 B 物理 C 存储 D 逻辑与存储 二 填空题 每小题2分 共24分 1 通常可以把一本含有不同章节的书的目录结构抽象成 结构 2 要在一个单向链表中p所指向的结点之后插入一个S所指向的新结 点 若链表中结点的指针域为next 可执行 和p next s 的操作 3 设有一个非空的链栈 栈顶指针为hs 要进行出栈操作 用x保存 出栈结点的值 找结点的指针域为next 则可执行x hs一 data 4 在一个不带头结点的非空链队中 f和r分别为队头和队尾指针 队结点的数据域为data 指针域为next 若要进行出队操作 并用变量x 存放出队元素的数据值 则相关操作为x f data 5 循环队列的最大存储空间为MaxSize 8 采用少用一个元素空间 以有效的判断栈空或栈满 若队头指针front 4 则当队尾指针 rear 时 队列为空 当rear 时 队列有6个 元素 6 稀疏矩阵存储时 采用一个由 非 零元3部分信息组成的三元组唯一确定矩阵中的一个非零元素 7 一棵二叉树顺序编号为6的结点 树中各结点的编号与等深度的完 全二叉中对应位置上结点的编号相同 若它存在右孩子 则右孩子的 编号为 8 数据结构中的数据元素存在多对多的关系称为 结构 o 9 数据结构中的数据元素存在一对多的关系称为 结 构 10 如下图所示的二叉树 其前序遍历序列为 11 在队列的顺序存储结构中 当插入一个新的队列元素时 指针的值增1 当删除一个元素队列时 指 针的值增1 12 循环队列的引入 目的是为了克服 三 综合题 每小题10分 共30分 1 1 设head1和P1分别是不带头结点的单向链表A的头指针和尾指 针 head2和P2分别是不带头结点的单向链表B的头指针和尾指针 若要 把B链表接到A链表之后 得到一个以head1为头指针的单向循环链表 写出其中两个关键的赋值语句 不用完整程序 结点的链域为next 2 单向链表的链域为next 设指针p指向单向链表中的某个结点 指针S指向一个要插入链表的新结点 现要把s所指结点插入p所指结点 之后 某学生采用以下语句 p next s s next p next 这样做正确吗 若正确则回答正确 若不正确则说明应如何改写 2 1 画出对长度为10的有序表进行折半查找的判定树 以序号1 2 10表示树结点 2 对上述序列进行折半查找 求等概率条件下 成功查找的平均查 找长度 3 1 利用筛选法 把序列 37 77 62 97 11 27 52 47 建成 堆 小根堆 画出相应的完全二叉树 2 写出对上述堆所对应的二叉树进行前序遍历得到的序列 四 程序填空题 每空2分 共16分 1 以下函数为直接选择排序算法 对a 口 a 幻 a n 中的记录进 行直接选择排序 完成程序中的空格 2 以下程序是中序遍历二叉树的递归算法的程序 完成程序中空格 部分 树结构中左 右指针域分别为left和right 数据域data为字符型 BT指向根结点 参考答案 一 单项选择题 每小题2分 共30分 BADBA CDDDD CDBBA 二 填空题 每题2分 共24分 1 树形 2 s next p next 3 hs hs一 next 4 f f一 next 5 42 6 行号列号 7 13 8 图状 9 树形 10 abdefCg 11 尾头 12 假上溢 三 综合应用题 每小题10分 共30分 四 程序填空题 每空2分 共16分 1 l n l 2 n 3 k j 4 a i a k 5 a k temp 2 1 Inorder BT left 2 printf C BT data 3 Inorder B1 right 一 单项选择题 每小题 2 分 共 30 分 1 数据元素是数据的3基本单位 它 A 只能有一个数据项组成 B 至少有二个数据项组成 C 可以是一个数据项也可以由若干个数据项组成 D 至少有一个数据项为指针类型 2 绒性表的顺序结构中 A 逻辑上相邻的元素在物理位置上不一定相邻 B 数据 元素是不能随机访问的 C 逻辑上相邻的元素在物理位置上也相邻 D 进 行数据元素的插入 删除效率较高 3 以下表中可以随机访问的是 A 单向链表 B 双向链表 C 单向循环链表 D 顺 序表 4 设顺序存储的钱性表长度为 n 对于删除操作 设删除位置是 等概率的 则删除一个元素平均移动元素的次数为 A n 1 2 B n C 2n D n i 5 设top 是一个链栈的栈顶指针 栈中每个结点由一个数据域 data 和指针域 next 组成 设用 x 接收楼顶元素 则出栈操作为 A x top data top top next B top top next x top data C x top next top top data D top next top x top data 6 以于说法正确的是 A 队列是后进先出 B 栈 的特点是后进后出 C 栈的删除和插入操作都只能在栈顶进行 D 队 列的删除和捶入操作都只能在队头进行 7 串函数StrCmp b cd 的值为 A 1 B 0 C bcd D 1 8 设有一个 12 阶的对称矩阵A 采用压缩存储方式将其下三角部 分以行序为主存储如一维数组b中 矩阵A的第一个元素为al l 数组 b 的下标从1开始 则矩阵A中第4行的元素在数组b中的下标i一定有 9 已知一个图的边数为 m 则该图的所有顶点的度数之和为 A 2m B m C 2m 1 D m 2 10 以下说法不正确的是 A 连通图 G一定存在生成树 B 连通圈 G 的生成树中一定包含 G 的所有顶点 C 连通图 G 的生成制中不一定包含 G 的所有边 D 连通图G的生成树可以是不连同的 11 散列查找的原理是 A 在待查记录的关键字值与该记录的存储位置之间建立确定的对 应关系 B 按待查记录的关键字有序的顺序方式存储 C 按关键字值的比较进行查找 D 基于二分查找的方法 12 排序过程中 每一趟从无序子表中将一个待排序的记录按其关 键字的大小放置到已经排好序的子序列的适当位置 直到全部排好序为 止 该排序算法是 A 直接插入排序 B 快速排序f C 冒泡排序 D 选择排序 13 采用顺序查找法对长度为 n 的线性表进行查找 不采用表尾 设监视哨的方法 最坏的情况下要进行 次元素间的比较 A n 2 B n C n l D n 2 14 如图若从顶点a出发按广度优先搜索法进行遍历 则可能得到 的顶点序列为 A acebdfgh B aebcghdf C aedfbcgh D abecdfgh 15 一棵哈夫曼树总共有23个结点 该树共有 个叶结 点 终端结点 A 10 B 13 C 11 D 12 1363i 二 填空题 每小黯 2 分 共 24 分 1 通常数据的逻辑结构包括 四种类型 2 设有一个单向链表 结点的指针域为 next 头指针为 head p 指向尾结点 为了使该单向链表改为单向循环链表 可用语句 3 设有一个单向循环链表 头指针为 head 链表中结点的指针 域为 next p指向尾结点的直接前驱结点 若要删除尾结点 得到一个 新的单向循环链表 可执行操作 4 在一个链队中 f 和 r 分别为队头和队尾指针 队结点的指 针域为 next 则插入一个s所指结点的操作为 r s 5 循环队列的队头指针为 f 队尾指针为 r 当 时表明队列为空 6 串函数 StrCat a b 的功能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论