摸鱼学大师
摸鱼学大师
全部文章
题解
未归档(8)
归档
标签
去牛客网
登录
/
注册
摸鱼学大师的博客
问月月不明?
全部文章
/ 题解
(共6篇)
题解 | #魔力转圈圈#
来自专栏
思路: 题目的主要信息: 一个二叉树根节点为1,l与r分别记录树的左右子节点,其中第个对应节点为的左右子节点 k数组中记录将要旋转的节点,旋转的时候将其所有子树及其子节点都交换位置 最后输出的数组为二叉树的中序遍历 0表示空节点 方法一:递归具体做法:利用递归的思想,遍历每一个要旋转的节点,将其...
二叉树
递归
中序遍历
非递归
栈
旋转
2021-08-08
0
517
题解 | #把二叉树打印成多行#
来自专栏
思路: 题目要求将二叉树按行打印,即按层打印,其中每层分开。不难想到,要使用层次遍历,但是难点在于如何每层分开存储,从哪里知晓分开的时机?在层次遍历的时候,我们通常会借助队列(queue),事实上,队列中的值大有玄机,让我们一起来看看: 当根节点进入队列时,队列长度为1,第一层结点数也为1 若是根...
二叉树
层次遍历
队列
递归
非递归
2021-07-15
0
580
题解 | #矩阵中的路径#
来自专栏
思路 题中给到的信息: 上下左右随便移动,找到字符串路径 访问可以重复,但是作为路径不能有重复 方法一:递归深度优先搜索 我们需要判断这个矩阵中的每一个结点是否可以走一条路径,即找到每个结点为起点,后续结点是否可以走出字符串字串的路径,该子问题又可以作为一个递归。因此,可以用图的递归dfs来解决...
dfs
深度优先
路径
矩阵
字符串
栈
非递归
2021-07-15
0
663
题解 | #二叉搜索树的第k个结点#
来自专栏
思路: 根据二叉搜索树的性质,其中序遍历是由大到小的,由此仅需要中序遍历找到第k个小的结点即可。 中序遍历有两种方式。 方法一:递归中序遍历 具体做法: 另写一函数进行递归中序遍历,设置全局变量count记录遍历了多少个结点,res记录第k个结点。 class Solution { public:...
二叉搜索树
递归
中序遍历
非递归
排序
2021-07-15
4
676
题解 | #汉诺塔问题#
来自专栏
思路: 从题中给出的有效信息: 汉诺塔,不需要记录次数,但是需要移动的塔的名字 对于汉诺塔,无论在哪座塔上,小盘必须要在大盘上面,因此可以逆向思维从结果考虑,left塔最下面的大盘,必定是left塔仅剩它,而right塔上面又什么东西都没有时才可以移动,则其余n-1个盘都在mid塔上,且顺序为从小...
汉诺塔
递归
动态规划
栈
非递归
2021-07-13
2
759
题解 | #二叉搜索树与双向链表#
来自专栏
思路: 题目中所给的关键信息: 这是一颗二叉搜索树,中序遍历便是从小到大的排序 不能添加新的结点,要在原结点基础上添加链表链接 *故采用二叉树中序遍历法遍历全树,依次添加链接,创建两个指针,一个指向题目中要求的链表头(head),一个指向当前遍历的前一结点(pre)。 方法一:递归中序遍历 具体...
二叉搜索树
双向链表
中序遍历
递归
非递归
2021-07-13
0
784