摘要: typora-root-url: ../Typora_images typora-copy-images-to: ../Typora_images Leetcode 1 我的错误做法 这是我的做法,这是错的。在于输出结果这里,它是要输出指针型的整个数组,而这里我是直接输出数组元素。 错误原因:不知道 阅读全文
posted @ 2021-12-30 15:12 风中少年呀 阅读(48) 评论(0) 推荐(0)
摘要: #非空二叉树b的宽度 有三种解决方案 ##方案一 记录每个结点的所在层数 比较麻烦,最后还得写一个循环去找出结点数最多的层 ##方案二 加一个队列,在循环过程中就记录当前结点数最多的层 即用两个队列来完成层次遍历,上一层遍历完的时候那个队列也为空,此时另一个队列的长度就是该层的结点数量 ##方案三 阅读全文
posted @ 2021-06-18 10:11 风中少年呀 阅读(394) 评论(0) 推荐(0)
摘要: #给出一个已经中序线索化的二叉树,怎么写出它的中序遍历序列 如果已经有前驱线索或者后继线索那就好办了,直接访问线索就行,问题就麻烦在之前就有左右子树并没有线索怎么办? ##目标 能够写出从前往后的中序遍历序列也能写出从后往前的中序遍历序列 ##如何得到中序线索化后结点的后继结点 1、若有后续线索 那 阅读全文
posted @ 2021-06-17 09:06 风中少年呀 阅读(164) 评论(0) 推荐(0)
摘要: ##思路 分别找到p、q到达根结点的路径,这两条路径的最后一个相同结点就是最近公共祖先 而后序遍历的非递归算法可以保留结点的所有祖先结点(即到根结点的路径),所以使用后序遍历的非递归算法具体实现 ##后序遍历的非递归算法 1、若结点不为空或者栈不为空,则继续执行以下步骤 2、若结点不为空,一直找左子 阅读全文
posted @ 2021-06-16 16:13 风中少年呀 阅读(569) 评论(0) 推荐(0)
摘要: ##思路 利用树的递归性质,使用递归算法的思想 1、若结点b不为空,则执行以下步骤。这是递归出口条件,非常重要,不然就一直循环递归了 2、则交换它的左子树结点的左右子树 3、交换它的右子树结点的左右子树 4、交换结点b自己的左右结点 void swap(BiTree B) { if(b){ swap 阅读全文
posted @ 2021-06-14 09:33 风中少年呀 阅读(166) 评论(0) 推荐(0)
摘要: #求二叉树中所有度为2的结点个数 ##思路 利用树的递归性质,使用递归算法,结点b以下的所有结点中度为2的结点个数为左子树+右子树中度为2的结点个数+b自身是否为度为2 的结点 1、f(b)=0 若b为null 2、f(b)=f(b->lchild)+f(b->rchlid)+1 若b为双分支结点 阅读全文
posted @ 2021-06-14 09:12 风中少年呀 阅读(2594) 评论(0) 推荐(0)
摘要: ##算法思路 找到每一层最后一个结点,当指针指到每一层最后一个结点的时候,高度+1 ##具体步骤 1、设置一个队列,用来层次遍历这棵二叉树。队列用数组来表示,front表示队头,rear表示队尾 2、设置工作指针p, last用来指向每层最后一个结点,level表示高度 3、层次遍历二叉树,即左、右 阅读全文
posted @ 2021-06-13 14:41 风中少年呀 阅读(548) 评论(1) 推荐(0)
摘要: 树 树的各个子树互不相交。每个结点只有一个唯一的前驱结点。 路径 路径只能从上往下;从根结点到叶子结点 路径长度指这条路径所经过边的长度。 树的路径长度 树根结点到每一个结点的路径长度之和。路径长度最短的树是完全二叉树。 树的深度和高度 深度(层数):从上往下数,根结点为第一层,从根结点往下依次是第 阅读全文
posted @ 2021-06-05 08:46 风中少年呀 阅读(1116) 评论(0) 推荐(1)
摘要: LaTex中三级标题的预览显示 一开始是只有一级标题的显示的。 ![截屏2021-05-19 上午9.10.25](/Users/wangyilinmac/Library/Application Support/typora-user-images/截屏2021-05-19 上午9.10.25.pn 阅读全文
posted @ 2021-05-19 09:32 风中少年呀 阅读(653) 评论(0) 推荐(0)