随笔分类 - 力扣刷题
各种语言版本的力扣刷题
摘要:题目链接:https://leetcode.cn/problems/subarray-sum-equals-k/?envType=study-plan-v2&envId=top-100-liked 暴力解法: 第一层循环左边界,第二层循环有边界,sum一直加,加到等于target就让cnt++。 p
阅读全文
摘要:题目链接: https://leetcode.cn/problems/find-all-anagrams-in-a-string/description/?envType=study-plan-v2&envId=top-100-liked 滑动窗口: import java.util.*; clas
阅读全文
摘要:题目链接: https://leetcode.cn/problems/longest-substring-without-repeating-characters/?envType=study-plan-v2&envId=top-100-liked 滑动窗口: 如果扫描到重复了的字符,就重新计算左侧
阅读全文
摘要:题目链接: 动态规划: 以前做过一遍但是还是忘掉了qaq...看了力扣的题解也没想起来 首先确定动态规划数组的含义,leftmax[i]表示i及i左边最高的柱子,这些柱子可能代表了能接到的最多的雨水;同样rightmax[i]代表i及i右边最高的柱子。 第二推导公式: leftMax[i] = Ma
阅读全文
摘要:题目链接:15. 三数之和 - 力扣(LeetCode) 三个指针法: i指针从头开始遍历指导倒数第三个,在循环内设置指针j、k,初始值分别为i+1和n-1,这样就都能遍历到。 1 class Solution { 2 public List<List<Integer>> threeSum(int[
阅读全文
摘要:题目链接:11. 盛最多水的容器 - 力扣(LeetCode) 贪心算法: 双指针,指向容器的两个边界。 1 class Solution { 2 public int maxArea(int[] height) { 3 int i = 0,j = height.length-1; 4 int ma
阅读全文
摘要:题目链接:283. 移动零 - 力扣(LeetCode) 暴力解法: 感觉像用了冒泡排序呢)只是把比较大小的if语句变成了判断是否为0. 1 class Solution { 2 public void moveZeroes(int[] nums) { 3 if(nums.length <= 1)
阅读全文
摘要:题目链接:128. 最长连续序列 - 力扣(LeetCode) 贪心方法:从头遍历num数组,不断更新count计数器和最大长度max,用pre记录前一个连续的数字。 1 class Solution { 2 public int longestConsecutive(int[] nums) { 3
阅读全文
摘要:题目链接:49. 字母异位词分组 - 力扣(LeetCode) 暴力解法套for循环 不是很想这么做捏 先想到了整个数组排序后再一个一个扫描。可以直接对每个小字符串进行排序然后一样的加入map 1 class Solution { 2 public List<List<String>> groupA
阅读全文
摘要:题目链接:1. 两数之和 - 力扣(LeetCode) 暴力解法: 1 class Solution { 2 public int[] twoSum(int[] nums, int target) { 3 for(int i = 0;i < nums.length-1 ; i++){ 4 for(i
阅读全文

浙公网安备 33010602011771号