数据结构笔记5数组
写一下树与二叉树的笔记。
\12. 在具有n个结点的二叉树中,其空指针域的个数为________。
A)2n+1 B)n-1 C)n+1 D) 不确定
13.如果二叉树T是由多叉树F转换而成,那么树F的叶子在二叉树T中应是满足_________条件结点。
A)左子树为空且右子树非空 B)左、右子树均为空
C)左子树为空 D)右子树为空。
14.已知二叉树的后序序列为:FDEBHGCA,中序序列为:BFEDAGHC,则其先序序列为:_________。
A)ABEDFGCH B)ABCEGFDH
C)ABCEFDGH D)ABEFDCGH
15.一棵共有23个结点的二叉树中,树中除度为2的结点外其它均为叶子结点,那么该树中叶子结点的个数是_________个。
A)9 B)10 C)11 D) 12
\16. 如果二叉树T是由多叉树F转换而成,那么树F的后根序列应该是二叉树T的_________。
A)层次遍历序列 B)先序序列
C)中序序列 D)后序序列
\17. 具有64个结点的完全二叉树的深度为_______。
A) 5 B) 6 C) 7 D) 8
( n=2K-1)
\18. 具有3个结点的二叉树共有______种形态。
A) 3 B) 4 C) 5 D) 6
\19. 若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( )
A) 9 B) 11 C) 15 D)不确定
20.一棵共有13个结点的4叉树中,其中除叶子结点外其它结点的度均为4,那么该树中叶子结点的个数是____个。
A)8 B)9 C)10 D) 11
\21. 一棵深度为h的二叉树,其结点个数最多为_______。
A)2h+1 B)2h-1 C)2h+1 D)2h-1
12.C 13.C 14.D 15.D 16.C 17.C 18.C 19.B 20.C
21.D
( )一棵多叉树转换成二叉树,该二叉树的根结点一定没有右子树。
( )二叉树只能用链式结构存储,无法用顺序存储结构存储。
( )完全二叉树中最多只能有一个度为1的结点。
( )完全二叉树中一定不存在度为1的结点。
( )具有n个结点的二叉树其深度一定小于n 。
9.√ 10.X
\11. √ 12. X 13. X
树的叶子节点
编写一个递归算法,求二叉树中位于先序遍历中第k个位置的节点的值。
编写一个递归算法,计算二叉树中叶子结点的数目
编写递归算法,将二叉树中所有节点的左右子树相互交换。
写出树的先根序列和后根序列
树与二叉树的考点主要是二叉树性质、二叉树遍历、二叉树与森林的转换以及哈夫曼树。
目前已经学了前五个部分了,仔细看看,其实是相互先联系的。数据结构笔记1绪论科普了数据结构的概念以及时间复杂度; 数据结构笔记2线性表阐述了最简单的顺序结构和链式结构; 数据结构笔记3栈和队列说明了生活中常用到的线性结构(递归、队列);数据结构笔记4串讲解了字符串的数据结构,也是生活中常用到的数据结构——文字;数据结构笔记5数组讲解了数组的数据结构,是图形处理的基础——二维数组;
这一部分是树和二叉树,其实在遍历中常用到。在vue中就是用虚拟DOM树,通过内部的计算,选出最好的渲染方式。
虚拟DOM大幅度提升了对修改HTML元素的性能,使网页响应更快。
DOM储存于内存中,提供操作和修改HTML元素的一系列API。DOM操作是前端开发的核心,最早流行的前端框架都以优秀的DOM操作闻名,如jQuery。与JavaScript逻辑相比,DOM操作的性能消耗非常高,在以静态内容为主的webpage时代,少量DOM操作的性能损耗基本可以忽略,然而对于存在丰富动态内容的webapp而言,大量、频繁的DOM操作逐渐成为了性能瓶颈。
virtual DOM技术的核心是创建DOM对象的一个轻量级克隆对象,虚拟DOM拥有原始DOM除了操作HTML元素的API以外的所有属性。对于JavaScript而言,虚拟DOM仅仅是一个拥有丰富属性的对象,所有针对DOM的操作被映射为对JavaScript对象的修改,性能上大幅度优于直接对DOM的操作。在接收到动态数据或用户操作后,Vue或react会在内存中将虚拟DOM树全量更新,对比检查受影响的对象,随后对这些对象所对应的真实DOM进行对应修改。得益于Vue或react的diff算法,可以采用全量更新策略并且能够保障对比性能。
这部分暂时写到这。
更新地址:GitHub
更多内容请关注:、GitHub、掘金