- 博客(9)
- 收藏
- 关注
原创 【105】从前序与中序遍历序列构造二叉树
目录标题一、题目二、思路代码123一、题目二、思路前序遍历:根左右 中序遍历:左根右就不太明白从数组到树的递归怎么写,递归参数是什么,于是看了下评论的解答,自己理解了下然后具体的范围确定,这里细节有两个点纠结了很久:(1)先序遍历的左右子树范围切片点(2)中序遍历的左子树起点为什么不能一直是0这两个点待会会在bug调试里提到。先讲一下正确的思路:接下来就是具体的范围确定。(1)先序第一个值为根值(2)在中序中找到a[i]=num,则[l2,i-1]为左树,[i+1,r2]为右树
2021-06-25 22:37:08
234
原创 【详细整理】102 二叉树的层序遍历
目录标题一、题目二、广度优先BFS几个bug点分析三、递归思路代码遇到的bug分析一、题目二、广度优先BFS照着之前整理的BFS模板一下就写出来了。模板详细的分析整理见之前博客。唯一的一个点是一边刷题一边学基础语法和数据结构。一开始有点懵怎么向二位的list里加元素。原来只有先新建一个list ,再向list里add就可以。class Solution { public List<List<Integer>> levelOrder(TreeNode root) {
2021-06-25 22:17:25
173
原创 【详细整理】广度优先算法
目录标题一、模板一、 理论1、解决的问题2、实现方法3、补充:队列的理论知识一、模板 // bfs,最常用于最小路径问题 Queue<> queue = new LinkedList<>(); // 这里是假设元素不会重复,所以用Set来判断一个元素是否已经读取过 Set<> visited = new Set<>(); queue.offer(起点); visited.add
2021-06-24 21:10:35
1846
原创 【小白必看】如何写递归
思想来自力扣101题中大佬的热评,链接在文末附上。为什么写不出来是因为找不到递归的点,怎么找递归的点:举例1判读一棵树是否对称思路:(1)首先如果是空树,肯定对称。不是的话对称需要比较左树和右树(2)左树的左孩子与右树的右孩子相等,左树的右孩子与右树的左孩子相等则对称。如何比较左孩子和右孩子是否相等…这里,递归的点就出来了,就是实现一个函数A需要用到A实现之后的功能。要判断两树是否相同,要通过他们的孩子是否相同来判断。递归点出现之后,立马动手按照递归思路写代码:树为空,对称不为空,通过
2021-06-24 20:40:07
330
原创 【非递归】二叉树迭代遍历
文章目录模板前序遍历中序遍历后序遍历模板二叉树的遍历顺序还是如图,使用迭代就是增加一个栈,来储存父节点。利用读取的顺序来实现遍历顺序。万能模板: while (root!=null||!stack.isEmpty()){ while(root!=null){ } if(!stack.isEmpty()){ } }
2021-06-23 17:07:56
129
原创 【详细整理】二叉树的遍历+力扣617合并二叉树 226翻转二叉树
文章目录一、二叉树遍历构架二、遍历举例三、遍历架构实操——力扣题1、617 合并二叉树(1)题目:(2)分析解答2、226翻转二叉树(1)题目(2)分析解答一、二叉树遍历构架刚开始刷二叉树的题,边刷边学,第一次接触二叉树,递归真是看得人:我是谁 我在哪,整理一下今天学的内容,复习同时以便以后自己查阅。如果有错误或者疏漏,欢迎大家补充交流。二叉树遍历构架: void traverse(TreeNode root){ if(root == null){ retur
2021-06-22 22:02:22
197
原创 【详细整理】排序第三题——349 两个数组的交集
目录一、 题目二、 思路三、初始代码四、调试过程bug分析bug 1bug 2bug 3bug 4bug 5五、 最终代码结果六、官方解答(1)代码(2) 分析七、 HashSet理论八、 HashMap:写在后面一、 题目题目:给定两个数组,编写一个函数来计算他们交集二、 思路直接用集合做实现:新建list数组,遍历nums1,统计其中出现的元素,再遍历nums2 如果其中元素list中含有,则输出。三、初始代码class Solution { public int[] inters
2021-06-21 17:21:00
88
原创 【小白】【详细整理】数据结构之排序
目录写在前面评价指标(1)时间复杂度。1)O(1)和O(n)和O(m+n)2) O(n²)和O(m*n)3)O(logn)和 O(nlogn)(2)空间复杂度1) O(1)2) O(n)冒泡排序选择排序插入排序归并排序基数排序计数排序快速排序随机快速排序写在前面刚开始准备秋招刷题,花一天时间简单了解了下数据结构中的排序部分,现将学习到的内容简单整理,文中代码l来自于网络的部分,会在最后附上链接,欢迎大家学习交流。推荐一个学习数据结构的直观网站:https://visualgo.net/zh零基础可以
2021-06-20 20:54:23
101
原创 【小白】【详细讲解】【排序第二题】力扣350 两个数组的交集
博主代码小白,今年参加秋招,现在开始刷题,于是写博客整理记录一下。看完数据结构中排序的大概内容开始刷力扣题,这题是遇到的第二题,完全是刚刚开始学代码的水平,所以很多操可能相当小白,很多基础知识也不太懂。请大家多多指教。
2021-06-18 21:43:15
252
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人