LeetCode
CRUD_BOY。
这个作者很懒,什么都没留下…
展开
-
二叉树的前中后序非递归遍历
前序遍历前序遍历最简单,无脑入栈无脑出栈,出栈的时候先入右再入左即可。class Solution { public List<Integer> preorderTraversal(TreeNode root) { LinkedList <TreeNode> stack = new LinkedList <> (); List <Integer> res = new ArrayList <> ();原创 2020-07-06 00:04:31 · 212 阅读 · 0 评论 -
45. 跳跃游戏 II
给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。示例:输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。说明:假设你总是可以到达数组的最后一个位置。思路:遍历数组,在每一步能到达的范围内寻找下一个到达最远位置的点class Solution { publi原创 2020-06-04 21:50:25 · 180 阅读 · 0 评论 -
leetcode03 无重复最长字串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。来源:力扣(Le原创 2020-05-19 20:57:29 · 201 阅读 · 0 评论 -
56. 合并区间
链接:https://pan.baidu.com/s/1fiWqslzttQx3CpIgf4Kd-w提取码:rgzd下载后点击CRT安装,一路next,之后点击keygen.exe点击Patch,选择到.exe文件然后就破解了。原创 2020-05-17 22:43:43 · 156 阅读 · 0 评论 -
leetcode695岛屿的最大面积
给定一个包含了一些 0 和 1的非空二维数组 grid , 一个 岛屿 是由四个方向 (水平或垂直) 的 1 (代表土地) 构成的组合。你可以假设二维矩阵的四个边缘都被水包围着。找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为0。)示例 1:[[0,0,1,0,0,0,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,1,1,1,0,0,0],[0,1,1,0,...原创 2020-03-16 22:59:06 · 140 阅读 · 0 评论 -
剑指offer---重建二叉树
题目来源输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树:3/ 9 20/ 15 7限制:0 <= 节点个数 <= 5000思路:最开始的想法是建一个...原创 2020-03-02 20:50:02 · 131 阅读 · 0 评论 -
不用加号和减号来实现加减法(利用位运算)
public class 加减法 { public static void main(String[] args) { System.out.println(minus(-4,-3)); } public static int plus(int a ,int b) { if(a == 0) { return b; } if(b == 0) { return a...原创 2020-02-18 13:30:38 · 987 阅读 · 0 评论 -
蓝桥杯 方格填数 (利用类似于八皇后的思想解决)
偶然看到这个题,觉得挺有趣,看到很多用dfs解的,我觉得没有必要,就写了这个。题目信息:方格填数如图,如下的10个格子,填入0~9的数字。要求:连续的两个数字不能相邻。hu(左右、上下、对角都算相邻)一共有多少种可能的填数方案?请填写表示方案数目的整数。judge()方法来判断此处填数是否符合要求,find()方法用来递归填数,整体方法类似于八皇后的解法,如果这个位置不能填则说明前面填...原创 2020-02-14 22:55:05 · 204 阅读 · 0 评论 -
leetcode015
这道题应该可以用暴力破解,我先尝试过一次,但是刚开始没想到怎么去重,就用了双指针,写完后突然想起那里面怎么去重了,但是这里就用这种方法吧.首先为了之后方便去重,要对数组进行排序,之后便是常规的双指针。public List<List<Integer>> threeSum(int[] nums) { List<List<Integer>&...原创 2020-01-21 17:42:29 · 206 阅读 · 0 评论