数据结构考试重点:填空题集锦

需积分: 3 1 下载量 191 浏览量 更新于2024-09-13 收藏 138KB DOC 举报
"这是一份关于数据结构的考试复习资料,涵盖了C语言版本的数据结构核心知识点,包括填空题,涉及栈、队列、排序、二叉树、树的性质、存储结构等多个方面。这份资料可以帮助考生快速掌握考试重点,无需额外阅读教材。" 以下是对题目中涉及知识点的详细解释: 1. 栈和队列都是线性数据结构,它们的主要区别在于插入和删除元素的位置,栈遵循“后进先出”(LIFO)原则,而队列遵循“先进先出”(FIFO)原则。 2. 数据的逻辑结构分为线性结构(如数组、链表、栈、队列)和非线性结构(如树、图)。 3. 堆排序在最坏情况下需要比较的次数为n log n,其中n是待排序元素的数量。 4. 满二叉树的特点是每一层都是完全填充的,除了最后一层。因此,n个节点的满二叉树没有度为1的节点,分支(非终端)结点数量为(n-1),叶子结点数量为n/2,深度为log2(n)+1。 5. 无向图的边数最多可以是n(n-1)/2,这是在一个完全图中的情况。 6. 栈满的判定条件通常是当栈顶指针指向栈顶元素的下一个位置时,即没有更多的空间容纳新元素。 7. 头结点是在链表或队列等线性结构中用于标识数据开始的特殊结点,它通常不存储实际数据。 8. 树和二叉树的主要差别包括:树的每个节点可以有任意多个子节点,而二叉树每个节点最多只有两个子节点;树的遍历方式比二叉树多,如前序、中序、后序以及层次遍历。 9. 将树转化为二叉树的目的是简化操作,便于实现某些算法,如搜索和排序。 10. 一个节点的度指的是它拥有的子节点数量,若结点A有三个兄弟(包括A自己),B是A的父节点,B的度是4。 11. 一棵具有n个节点的二叉树,每个节点有两个指针域,一个指向左子节点,一个指向右子节点,所以共有2n个空指针域。 12-14. 这些题目考察的是二叉树的遍历规律,根据给定的前序、中序或后序序列,可以唯一确定二叉树的形状,从而推导出其他序列。 15. k叉树的最大深度是n,当树形结构为一条链时;最小深度是logk(n)+1,当树呈完全平衡状态时。 16. 在二叉树中,如果所有的结点要么度为0(叶子节点),要么度为2,那么度为2的结点数量等于叶子结点数量减1,再加1(根节点)。因此,如果有67个结点,度为2的结点数量是33。 17. 树的边数等于结点数量减1,因为树的边连接了所有结点,除了根节点外,每个结点都有一个进入的边。所以100个结点的树有99条边。 18. 哈夫曼树(最优二叉树)的叶子结点数量等于权值之和,若总共有19个结点,则叶子结点数量为10。 19. 具有特定先根和中根序列的二叉树,可以通过分析序列特点推断出叶子结点。例如,先根序列为ABDECFGH,中根序列为DEBAFCHG,表明A是根,D和E是A的子节点,B和C是D的子节点,F和G是E的子节点,H是C的子节点,因此叶子结点是D、E、G、H。 20-23. 这些题目涉及到数组和矩阵的存储方式,包括行序为主、列序为主和压缩存储,需要根据给定的存储方式和元素位置计算地址。具体计算涉及数组索引公式和矩阵压缩存储的规则,需要了解这些基础知识才能解答。 以上是数据结构部分的核心知识点,包括基本概念、数据结构特性、排序算法、树和二叉树的遍历、存储结构等,这些都是学习数据结构时的重点内容。