摘要:
209、长度最小的子数组 基本思想: 滑动窗口 具体实现: 1.窗口内是什么? 窗口内是窗口起始位置和窗口结束位置框住的一段数组。 2.窗口的起始位置如何移动? 如果当前窗口的值>=s,窗口要缩小,就是起始位置向后移。 3.窗口的结束位置如何移动? 如果当前窗口的值<s,窗口要扩大,就是结束位置向后 阅读全文
posted @ 2021-10-10 15:39
最近饭吃的很多
阅读(77)
评论(0)
推荐(0)
摘要:
977、有序数组的平方 基本思想: 双指针法 左右指针 具体实现: 1、数组是有序的,但是负数平方后可能会变大 2、数组平方后的最大值在数组的最右端或者最左端 3、left指向数组起始位置,right指向数组终止位置 4、定义一个和原始数组一样大的新数组result 5、定义一个指针指向result 阅读全文
posted @ 2021-10-09 16:25
最近饭吃的很多
阅读(43)
评论(0)
推荐(0)
摘要:
27、移除元素 基本思想: 数组的元素在内存地址中是连续的,不能单独删除数组中的某个元素,只能覆盖 双指针法(快慢指针) 具体实现: 代码: class Solution { public int removeElement(int[] nums, int val) { int fastIndex 阅读全文
posted @ 2021-10-09 16:03
最近饭吃的很多
阅读(49)
评论(0)
推荐(0)
摘要:
看的代码随想录的解析 236、二叉树的最近公共祖先 基本思想: 自底向上查找,就可以找到公共祖先 回溯就是自底向上 后序遍历是天然的回溯过程,最先处理的一定是叶子节点 具体实现: 找到一个节点,左子树出现节点p,右子树出现节点q(反过来也行),那么该节点就是节点p和q的最近公共祖先。 递归三步: 1 阅读全文
posted @ 2021-10-08 17:03
最近饭吃的很多
阅读(136)
评论(0)
推荐(0)
摘要:
222.完全二叉树的节点个数 基本思想: 递归 具体实现: 普通二叉树求节点个数 1.递归参数以及返回值 参数:根节点 返回值:以该节点为根节点的二叉树的节点数量 2.递归终止条件 遍历到空节点的话,返回0,表明节点数为0 3.单层递归的逻辑 先求左子树节点数量,再求右子树节点数量,最后取总再加1( 阅读全文
posted @ 2021-10-07 17:08
最近饭吃的很多
阅读(97)
评论(0)
推荐(0)
浙公网安备 33010602011771号