算法
文章平均质量分 52
废砂
这个作者很懒,什么都没留下…
展开
-
LeetCode92.反转链表Ⅱ
题目描述思路与反转链表略有不同,此题要求反转区间内的链表,其实总体思路和反转全链表是差不多的,不过因为是区间内反转,指针指向稍微要复杂一些。可以通过画图来理解整个过程。方法一:双指针反转借用leetcode评论区dalao的一张图,通过图解可以理解整个过程代码如下:class Solution { public ListNode reverseBetween(ListNode head, int left, int right) { //定义一个虚拟头结点,方便处理原创 2021-06-21 09:49:11 · 128 阅读 · 0 评论 -
Leetcode 226.翻转二叉树
题目描述解析怎么把二叉树翻转?通过观察,我们发现只要把每个节点的左右孩子进行交换就OK了。那怎么进行交换?有两种方式:1. 自顶向下翻转 2.自底向上翻转自顶向下翻转(前序遍历)从根节点开始,先把根节点左右子树翻转过来,再进入左子树,把左子树内部的左右子树进行翻转,同理把右子树内部的左右子树进行翻转,依此类推,,,最终把二叉树全部翻转过来。即先交换左右子树,再通过递归把内部的子树进行翻转,即先交换,再递归,在“递”的过程中解决问题。代码如下:class Solution { pub原创 2021-06-08 19:29:00 · 230 阅读 · 0 评论