leetCode
文章平均质量分 82
fan__lee
向前走,不回头
展开
-
leetCode总
leetCode总1-421-421.两数之和2-两数相加3-无重复字符串的最长子串4-##5-最长回文子串转载 2021-08-02 20:03:37 · 240 阅读 · 0 评论 -
leetcode hot/96-100
目录581 - 最短无序连续子数组617-合并二叉树621-任务调度器647-回文子串的长度739-每日温度581 - 最短无序连续子数组给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。请你找出符合题意的 最短 子数组,并输出它的长度。示例 1:输入:nums = [2,6,4,8,10,9,15]输出:5解释:你只需要对 [6, 4, 8, 10, 9]进行升序排序,那么整个表都会变为升序排序。示例 2:输入:nu原创 2021-06-21 16:54:06 · 97 阅读 · 0 评论 -
leetcode hot/91-95
目录461-汉明距离494-目标和538-把二叉搜索树转换为累加树543-二叉树的直径560. 和为K的子数组461-汉明距离两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。给你两个整数 x 和 y,计算并返回它们之间的汉明距离。示例 1:输入:x = 1, y = 4 输出:2 解释:1 (0 0 0 1) 4 (0 1 0 0)  原创 2021-06-21 11:04:18 · 120 阅读 · 0 评论 -
leetcodehot/86-90
目录406-根据身高重建队列416. 分割等和子集406-根据身高重建队列…刚开始是乱序的—》》调整为有序题目描述:整数对 (h, k) 表示,其中 h 是这个人的身高,k 是排在这个人前面且身高大于或等于 h 的人数。渔(套路):一般这种数对,还涉及排序的,根据第一个元素正向排序,根据第二个元素反向排序,或者根据第一个元素反向排序,根据第二个元素正向排序,往往能够简化解题过程。在本题目中,我首先对数对进行排序,按照数对的元素 1 降序排序,按照数对的元素 2 升序排序。原因是,按照元素 1原创 2021-06-20 13:50:25 · 126 阅读 · 0 评论 -
leetcode/81-85
leetcode337-打家劫舍||338-比特位计数347-前k个高频元素337-打家劫舍||在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为“根”。 除了“根”之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果两个直接相连的房子在同一天晚上被打劫,房屋将自动报警。计算在不触动警报的情况下,小偷一晚能够盗取的最高金额。示例 1: 输入: [3,2,3,null,3原创 2021-06-19 11:06:32 · 122 阅读 · 0 评论 -
leetCode 66-70
leetcode234-回文链表236-二叉树的最近公共祖先234-回文链表请判断一个链表是否为回文链表。示例 1:输入: 1->2->2->1输出: true示例 2:输入: 1->2输出: false/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} *原创 2021-06-18 18:56:46 · 92 阅读 · 0 评论 -
leetcode/76-80
300-最长上升子序列class Solution { public int lengthOfLIS(int[] nums) { if(nums.length==0) return 0; int[] dp = new int[nums.length]; dp[0] = 1; int maxlen = 1; //依次判断当前点的最长递增子序列 for(int i=1;i<nums.leng.原创 2021-06-18 11:07:31 · 138 阅读 · 0 评论 -
leetcode/71-75
234-回文链表/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = ne原创 2021-06-16 16:44:54 · 117 阅读 · 0 评论 -
leetcode/61-65
207-课程表class Solution { List<List<Integer>> edgs; int[] visited; boolean valid = true; public boolean canFinish(int numCourses, int[][] prerequisites) { edgs = new ArrayList<>(); for(int i=0;i<numC.原创 2021-06-16 10:33:18 · 200 阅读 · 0 评论 -
leetcode/56-60
160-相交链表public class Solution { public ListNode getIntersectionNode(ListNode headA, ListNode headB) { if (headA == null || headB == null) { return null; } ListNode pA = headA, pB = headB; while (pA != p原创 2021-06-14 17:24:36 · 103 阅读 · 0 评论 -
leetCode 51-55
##环形链表 II原创 2021-06-14 15:02:30 · 129 阅读 · 0 评论 -
leetCode ---50
leetcode114-二叉树展开为链表121-买卖股票的最佳时机124-最大路径和128-最长序列长度136-只出现一次的数139-单词拆分114-二叉树展开为链表给你二叉树的根结点 root ,请你将它展开为一个单链表:展开后的单链表应该同样使用TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。/** * Definition for a binary tree node. * public原创 2021-06-07 11:18:38 · 112 阅读 · 0 评论 -
leetCode 41-45
leetcode98-验证二叉搜索树98-验证二叉搜索树原创 2021-06-05 11:14:05 · 130 阅读 · 1 评论 -
leetCode 36-40
leetcode79-单词搜索84-柱状图中最大的矩形![在这里插入图片描述](https://img-blog.csdnimg.cn/20210603155427738.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Zhbl9fbGVl,size_16,color_FFFFFF,t_70)79-单词搜索给定一个 m x n 二维字符网格 b原创 2021-06-04 15:29:39 · 117 阅读 · 0 评论 -
leetCode 31-35
leetCode70-跳台阶70-跳台阶楼层为n, 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶?青蛙跳台阶----class Solution { public int climbStairs(int n) { if(n==0||n==1||n==2) return n; int[] dp = new int[n+2]; dp[0] = 0; dp[1] = 1; dp[2] = 2;原创 2021-06-03 14:03:36 · 111 阅读 · 0 评论 -
leetCode 26-30
leetCode53-连续子序列最大值55-跳跃游戏53-连续子序列最大值给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。class Solution { public int maxSubArray(int[] nums) { int len = nums.leng原创 2021-05-31 16:07:24 · 133 阅读 · 1 评论 -
leetCode 21-25
leetCode39- 组合总和42-接雨水46 - 数字全排列48-矩阵旋转90度39- 组合总和给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target的组合。candidates 中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。 解集不能包含重复的组合。示例 1:输入:candidates = [2,3,6,7], target = 7, 所求解集为: [ [7],原创 2021-05-30 16:49:13 · 117 阅读 · 0 评论 -
LeetCodeHot15-20
leetCode23 --- 合并k个有序链表31 - 下一个排列23 — 合并k个有序链表/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode n原创 2021-05-28 17:07:11 · 144 阅读 · 0 评论 -
LeetCodeHot11-15
leetCode17- 电话号码的字母组合19. 删除链表的倒数第 N 个结点20-括号匹配17- 电话号码的字母组合给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例1:输入:digits = “23” 输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”] 示例2:输入:digits = “” 输出:[] 示例3:输入:原创 2021-05-27 15:45:27 · 108 阅读 · 0 评论 -
LeetCodeHot6-10
leetCode 6-1010-正则表达式11-盛水最多12-罗马数字表示14-最长公共前缀15- 三数之和10-正则表达式正则11-盛水最多详解linkpackage LeetCodeHot100;public class L11MaxWater { public int maxArea(int[] height) { if (height.length==0) return 0; int res = 0; int i=0;原创 2021-05-26 19:39:52 · 117 阅读 · 0 评论 -
LeetCode01-05
leetCode01-0501-两数之和02-两数相加03-无重复字符串的最长子串01-两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。package LeetCodeHot100;import java.util.*;public class L01TwoNumSum {原创 2021-05-24 21:31:29 · 123 阅读 · 0 评论