![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法学习
文章平均质量分 70
ice_Cola Cool
这个作者很懒,什么都没留下…
展开
-
二叉树的层序遍历
简单,用一个变量size标记一下就行了,size表示某一层的元素个数,只要出队,就将size减1,减到0就说明该层元素访问完了。之后再将20 出队,并将其子孩子15和7入队,此时再次size–,变成9了。当size=0,说明当前层已经处理完了,此时队列有四个元素,而且恰好就是下一层的元素个数。1.首先拿根节点3,其左/右子结点都不为空,就将其左右放入队列中,因此此时3已经出队了,剩余元素9和20恰好就是第二层的所有结点,此时size=2。我们再观察执行过程图,我们先将根节点放到队列中,然后不断遍历队列。原创 2023-08-05 17:35:13 · 45 阅读 · 0 评论 -
后序中序恢复二叉树
恢复树以中序排列为主体,使用前后序辅助我们得到中间节点是哪一个。前后序中左右节点的划分是通过中序排列划分后才得知的。总体流程如下:后序得知中间节点->去中序使用中间节点划分出中间节点和左右子节点集->将左右子节点集带入到后序中匹配得知左右子节点集中的中间节点是哪个->再去中序使用得知的中间节点划分出中间节点和其左右子节点集。原创 2023-08-05 17:19:07 · 76 阅读 · 0 评论 -
链表经典算法问题笔记
1.在被删除节点的前一个节点进行删除操作 pre.next=pre.next.next;2.使用了虚拟节点的技巧,这是为了统一节点操作,这样就不需要特殊处理头结点没有前一个节点的情况3.移除了一个节点就相当于往后走一位了,所以删除后不需要再后移一位。不删除的情况节点才要后走一位。原创 2023-08-02 00:10:26 · 49 阅读 · 0 评论 -
算法通关村第一关——链表青铜挑战笔记-【链表基础】
算法-链表基础原创 2023-07-20 22:09:34 · 141 阅读 · 0 评论