算法练习
xingxiaopang
这个作者很懒,什么都没留下…
展开
-
N叉树的遍历
N叉树前DFS遍历class Node { public int val; public List<Node> children; public Node() {} public Node(int _val) { val = _val; } public Node(int _val, List<Node> _children) { v原创 2021-02-08 18:41:31 · 466 阅读 · 0 评论 -
二叉树典型题目训练(二)
重建二叉树//输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 //// //// 例如,给出 //// 前序遍历 preorder = [3,9,20,15,7]//中序遍历 inorder = [9,3,15,20,7] //// 返回如下的二叉树: //// 3// / \// 9 20// / \// 15 7 //// //// 限制: //// 0 <=原创 2021-02-05 20:04:16 · 113 阅读 · 0 评论 -
二叉树典型题目训练(一)
二叉树遍历掌握递归遍历方式先序遍历中序遍历后序遍历//给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 //// //// 示例 1: //// //输入:root = [1,null,2,3]//输出:[1,2,3]// //// 示例 2: //// //输入:root = []//输出:[]// //// 示例 3: //// //输入:root = [1]//输出:[1]// //// 示例 4: //// //输入:原创 2021-02-04 20:22:08 · 186 阅读 · 0 评论 -
双指针经典练习题
针对常见的双指针使用做针对性训练删除排序数组中的重复项//给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 //// 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 //// //// 示例 1: //// 给定数组 nums = [1,1,2], ////函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 ////你不需要考虑数组中超出新长原创 2021-02-03 16:05:39 · 358 阅读 · 0 评论 -
滑动窗口最值
算法练习滑动窗口最值问题:给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7]解释:滑动窗口的位置 最大值[1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3 5] 3 6 7 51 3 -1原创 2021-02-02 20:46:09 · 129 阅读 · 0 评论