![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣专题
Formalinn
这个作者很懒,什么都没留下…
展开
-
打卡力扣专题第二天 公平的糖果棒交换
公平的糖果棒交换题目如下:爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 根糖果棒的大小,B[j] 是鲍勃拥有的第 j 根糖果棒的大小。因为他们是朋友,所以他们想交换一根糖果棒,这样交换后,他们都有相同的糖果总量。(一个人拥有的糖果总量是他们拥有的糖果棒大小的总和。)返回一个整数数组 ans,其中 ans[0] 是爱丽丝必须交换的糖果棒的大小,ans[1] 是 Bob 必须交换的糖果棒的大小。如果有多个答案,你可以返回其中任何一个。保证答案存在。示例 1:输入:A = [1,原创 2021-02-01 22:18:04 · 157 阅读 · 2 评论 -
#打卡力扣 相似字符串组
打卡力扣专题第一天今天做的题目是相似字符串组,难度为困难。运用的思想是并查集。题目如果交换字符串 X 中的两个不同位置的字母,使得它和字符串 Y 相等,那么称 X 和 Y 两个字符串相似。如果这两个字符串本身是相等的,那它们也是相似的。例如,“tars” 和 “rats” 是相似的 (交换 0 与 2 的位置); “rats” 和 “arts” 也是相似的,但是“star” 不与 “tars”,“rats”,或 “arts” 相似总之,它们通过相似性形成了两个关联组:{“tars”, “ra原创 2021-02-01 21:29:20 · 138 阅读 · 0 评论 -
Leetcode 至少是其他数字两倍的最大数
在一个给定的数组nums中,总是存在一个最大元素 。查找数组中的最大元素是否至少是数组中每个其他数字的两倍。如果是,则返回最大元素的索引,否则返回-1。代码如下:ackage bad;public class atLeast {public int dominantIndex(int[] nums){int maxIndex=0;for (int i=0;i<nums.len...原创 2020-04-22 23:08:39 · 120 阅读 · 0 评论 -
Leetcode 使用最小花费爬楼梯
数组的每个索引做为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 costi。每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。输入: cost = [10, 15, 20]输出: 15解释: 最低花费是从cost[1]开始,然后走两步即可到阶梯顶,...原创 2020-04-22 22:47:28 · 168 阅读 · 0 评论 -
Leetcode 1比特与2比特字符
线性扫描、package bad;//1比特与2比特字符public class bITE {public boolean isOneBitCharacter(int[] bits){int i=0;while (i<bits.length-1){i+=bits[i]+1;}return i==bits.length-1;}//测试类public static voi...原创 2020-04-05 21:29:36 · 156 阅读 · 0 评论 -
Leetcode 数组的度
package bad;import java.util.Collections;import java.util.HashMap;import java.util.Map;public class arraYdU {public int findshortsubarray(int[] nums){Map<Integer,Integer> left=new HashMap(...原创 2020-03-31 22:59:28 · 169 阅读 · 0 评论 -
Leetcode 最长连续递增序列
package bad;public class lEngth {public int finfLengthof(int[] nums){if(nums.length==0)return 0;int max_len=1;int len=1;for(int i=0;i<nums.length-1;i++){if(nums[i]<nums[i+1]){len++;}el...原创 2020-03-31 17:02:57 · 104 阅读 · 0 评论 -
Leetcode 非递减数列
代码如下package bad;public class cheCk {public boolean checkPossibility(int[] nums){int cnt=0;for(int i=0;i<nums.length-1;i++){//注意 如果忘记-1会出现数组越界的情况if(nums[i]>nums[i+1]){int tmp=nums[i];if(i...原创 2020-03-30 23:15:10 · 138 阅读 · 0 评论 -
Leetcode 图片平滑器
这道题大概意思应该是180°翻转,0变1小声哔哔 像这种靠想象的题我真的学不会555代码如下package bad;public class smmoO {public int[][] imageSmoother(int[][] M){int R=M.length,C=M[0].length;//R是行 C是列int[][] ans=new int[R][C];//重组for(in...原创 2020-03-30 22:25:53 · 132 阅读 · 0 评论 -
Leetcode 子数组最大平均数
这道题说实话我看懂了一半,害,始终还是只菜鸟代码如下package bad;public class Average {public double findMaxAverage(int[] nums,int k){int[] sum=new int[nums.length];//new length;sum[0]=nums[0];for(int i=1;i<nums.lengt...原创 2020-03-26 22:45:59 · 108 阅读 · 0 评论 -
Leetcode 三个数的最大乘积
今天做了这道题,有两种方法可能相对于容易理解一点给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24注意:给定的整型数组长度范围是[3,104],数组中所有的元素范围是[-1000, 1000]。输入的数组中任意三个数的乘积不会超出32位有符号整数的范围。代码如下第一...原创 2020-03-26 20:19:06 · 218 阅读 · 0 评论 -
Leetcode 种花问题
假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数 n 。能否在不打破种植规则的情况下种入 n 朵花?能则返回True,不能则返回False。示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出: Tr...原创 2020-03-25 23:09:21 · 245 阅读 · 0 评论 -
Leetcode 最短无序连续子数组
这道题有很多很多种做法,我选的是排序做法,可能比较容易理解点吧代码如下:package bad;import java.util.Arrays;//引入Arrays类public class shortUnfind {public int findUnsortedSubarry(int[] nums){int[] snums=nums.clone();//clone调用对象Array...原创 2020-03-25 21:47:50 · 141 阅读 · 0 评论 -
Leetcode 重塑矩阵
这道题真的很花时间,我在做测试类就掉坑了,还爬不上来,(我太菜了)话不多说,代码如下package bad;import sun.management.snmp.jvmmib.EnumJvmMemManagerState;import java.util.LinkedList;//引入util类中的LinkedList类import java.util.Queue;//引入util类中...原创 2020-03-25 16:45:53 · 130 阅读 · 0 评论 -
Leetcode 数组拆分
这道题如果看力扣题目,可能会很懵逼,希望我的代码易懂一点。以下是力扣题目给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。示例 1:输入: [1,4,3,2]输出: 4解释: n 等于 2, 最大总和为 4 = min(1, 2) + min(3,...原创 2020-03-23 23:02:26 · 166 阅读 · 0 评论 -
Leetcode 数组中的K-diff数对
因为粗心,实在是太粗心了。Debug了很久。我要引以为戒!!package bad;import com.sun.deploy.security.SelectableSecurityManager;import java.util.Arrays;//引入util类中的Arrays类//[3,1,4,1,5] k=2 3-1 5-3public class kDiff {public i...原创 2020-03-23 22:18:30 · 147 阅读 · 0 评论 -
Leetcode 斐波那契数列
这道题有很多做法,我采用的的是记忆化自底向上的方法package bad;import java.util.Scanner;//斐波那契数列 通常用F(n)表示 F(0)=0;F(1)=1;F(N)=F(N-1)+F(N-2);public class feiBoNa {public int fib(int N){if(N<=1){return N;}return memo...原创 2020-03-23 15:41:13 · 241 阅读 · 0 评论 -
Leetcode 最大连续1的个数 等级简单
方法:一次遍历package bad;//[1,1,0,1,1,1] 3public class maxOne {public int findMaxConsecutiveOnes(int[] nums){int count=0;//定义次数int maxCount=0;//定义最大次数for(int i=0;i<nums.length;i++){//for循环找出1if(n...原创 2020-03-23 14:31:08 · 97 阅读 · 0 评论 -
Leetcode 找到所有数组中消失的数字 等级简单
我果然还是个菜鸟,太菜了。因为一个数组长度的问题Debug了很久,最后还是我学前端的哥看出了问题。I am so vegetable.package bad;import java.util.HashMap;//引入util类中的HashMap类import java.util.LinkedList;//引入util类中的LinkedList类import java.util.List;...原创 2020-03-22 23:46:17 · 107 阅读 · 0 评论 -
Leetcode 等级简单 移动零
leetcode虐我千百遍,我待leetcode如初恋package bad;public class removeZero {public static void moveZero(int[] nums) {int lastNumberNotZero = -1;int count = 0;for (int i = 0; i < nums.length; i++) {if (n...原创 2020-03-22 14:13:14 · 124 阅读 · 0 评论 -
Leetcode 等级简单 移除元素
移除元素这道题有很多种做法。也要考虑很多种情况。package bad;public class removeElement {public int removeE(int[] nums, int val) {int ans = 0;for (int num : nums) {//使用遍历if (num != val) {nums[ans] = num;ans++;}}ret...原创 2020-03-22 14:10:32 · 84 阅读 · 0 评论 -
Leetcode 等级简单 删除排序数组中的重复项
双指针的做法package bad;public class remove {public int removeduplicates(int[] nums){if(nums.length==0) return 0;//判断数组长度int i=0;//双指针for(int j=1;j<nums.length;j++){if(nums[j]!=nums[i]){i++;nums...原创 2020-03-22 14:07:37 · 91 阅读 · 0 评论 -
Leetcode 黄金分割点等级简单
这道题,一定要注意的点,一定一定不要把double写成float 亲身经历,红了一大片。public class Huangjin {public static void main(String[] args) { double min = 1;//中间值定为1 double breakPoint = 0.618;//黄金分割点值 int fz = 0;//分子 ...原创 2020-03-22 13:48:32 · 171 阅读 · 0 评论 -
Leetcode 两数之和 等级简单
这是一道很早很早之前做的题。也是力扣里面的一道简单题。但是对于菜得不能再菜的小白我,简直虐我千百遍。呜呜呜class Helloworld {//Helloworld是个类名public int[] twosum(int[] nums,int target){//public 是个公共类Map<Integer,Integer> map=new HashMap<>();...原创 2020-03-22 13:42:57 · 112 阅读 · 0 评论 -
Leetcode 简单 数组 第三大数
力扣 等级简单 数组 第三大数前半个月做的一道题,今天把它完善了。package bad;//首先要建立一个Packageimport java.util.TreeSet;//引入util类中的TreeSet类public class bigThird {public int thirdMax(int[] nums){if(numsnull || nums.length0)//判断数组...原创 2020-03-22 13:35:55 · 183 阅读 · 0 评论