代码随想录算法训练营Day15 102.二叉树的层序遍历 226.翻转二叉树 101. 对称二叉树 107.二叉树的层次遍历II102.二叉树的层序遍历题目给你二叉树的根节点root,返回其节点值的。(即逐层地,从左到右访问所有节点)。思路创建一个队列que用来装元素,只要que里面有元素说明没有全部遍历完,要把que的长度记录下来,因为之后会变。在循环里面创建一个level,表示这一层的元素,pop出来que的长度个元素加入level里面,有子节点的话要把子节点放进que里面去。107.二叉树的层次遍历II题目给你二叉树的根节点root,返回其节点值。
144. 二叉树的前序遍历 145. 二叉树的后序遍历 94. 二叉树的中序遍历 根结点作为cur,只要cur不是None或者栈里还有元素,进入循环,只有是cur存在,就把它的值放进结果集,然后判断它是否有左孩子,如果没有就是cur是None,cur就重新成为栈最外面的元素的右孩子。顺序是先把跟节点弹出来,左右节点入栈,弹出左节点(也就是左子树的根节点),看看左节点有没有子节点,有的话就入栈,再弹出左节点的左孩子,如果当前这个节点没有子节点了,栈最外面的就是右孩子,弹出就行了。核心步骤只有三个操作,加入当前被pop出来的节点的左节点,加入右节点,把本身放回去并加入None作为标记。
代码随想录算法训练营Day4 面试题 02.07. 链表相交 24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 142.环形链表II 面试题 02.07. 链表相交面试题 02.07. 链表相交。
代码随想录算法训练营Day2 | 数组part2. 977.有序数组的平方 209.长度最小的子数组 59.螺旋矩阵II 977.有序数组的平方977.有序数组的平方给你一个按排序的整数数组nums,返回组成的新数组,要求也按排序。如果没有负数的话直接平方就可以了。虽然有复数但是依然有规律,中间0是最小的,往左递增,往右也递增,所以比较最左和最右,看哪个大,就排在结果数组的末尾,然后再往前排。有两种方法,暴力法是直接平方然后用sort排序,和双指针方法。
代码随想录算法训练营第一天 | 数字part1. 704二分查找. 27移除元素 35.34. 704. 二分查找数组基础知识回顾数组是连续空间内相同类型数据的集合●存储空间是连续的●下标都是从0开始因为存储空间总是连续的,所以在增加和删除某个元素的时候就需要移动其他元素的地址。