自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 leetcode刷题---318.最大长度乘积(22)

给定一个字符串数组words,找到length(word[i]) * length(word[j])的最大值,并且这两个单词不含有公共字母。你可以认为每个单词只包含小写字母。如果不存在这样的两个单词,返回 0提示:2 <= words.length <= 1000 1 <= words[i].length <= 1000 words[i]仅包含小写字母charAt(int index)方法是一个能够用来检索特定索引下的字符的String实例的方法.ch...

2021-11-17 10:44:42 221

原创 leetcode刷题---完美矩形(20)

给你一个数组rectangles,其中rectangles[i] = [xi, yi, ai, bi]表示一个坐标轴平行的矩形。这个矩形的左下顶点是(xi, yi),右上顶点是(ai, bi)。如果所有矩形一起精确覆盖了某个矩形区域,则返回true;否则,返回false。提示:1 <= rectangles.length <= 2 * 104rectangles[i].length == 4-105 <= xi, yi,...

2021-11-16 14:37:04 4471

原创 leetcode刷题----键值映射

难度中等136收藏分享切换为英文接收动态反馈实现一个MapSum类,支持两个方法,insert和sum:MapSum()初始化MapSum对象 void insert(String key, int val)插入key-val键值对,字符串表示键key,整数表示值val。如果键key已经存在,那么原来的键值对将被替代成新的键值对。 int sum(string prefix)返回所有以该前缀prefix开头的键key的值的总和。示例:输入:[...

2021-11-14 11:27:14 4582

原创 leetcode刷题---检测大小字母

难度简单149收藏分享切换为英文接收动态反馈我们定义,在以下情况时,单词的大写用法是正确的:全部字母都是大写,比如"USA"。 单词中所有字母都不是大写,比如"leetcode"。 如果单词不只含有一个字母,只有首字母大写,比如"Google"。给你一个字符串word。如果大写用法正确,返回true;否则,返回false。示例 1:输入:word = "USA"输出:true示例 2:输入:word = "FlaG"输出:false...

2021-11-13 09:29:35 3926

原创 leetcode刷题----375. 猜数字大小 II

我们正在玩一个猜数游戏,游戏规则如下:我从1到 n 之间选择一个数字。你来猜我选了哪个数字。如果你猜到正确的数字,就会 赢得游戏 。如果你猜错了,那么我会告诉你,我选的数字比你的 更大或者更小 ,并且你需要继续猜数。每当你猜了数字 x 并且猜错了的时候,你需要支付金额为 x 的现金。如果你花光了钱,就会 输掉游戏 。给你一个特定的数字 n ,返回能够 确保你获胜 的最小现金数,不管我选择那个数字 。输入:n = 10输出:16解释:制胜策略如下:- 数字范围是 [1,1...

2021-11-12 10:45:23 106

原创 leetcode刷题-----k个逆序对数组

难度困难132收藏分享切换为英文接收动态反馈给出两个整数n和k,找出所有包含从1到n的数字,且恰好拥有k个逆序对的不同的数组的个数。逆序对的定义如下:对于数组的第i个和第j个元素,如果满i<j且a[i]>a[j],则其为一个逆序对;否则不是。由于答案可能很大,只需要返回 答案 mod 109+ 7 的值。class Solution { public int kInversePairs(int n, int k) { long[][...

2021-11-11 10:07:15 378

原创 leetcode刷题---- 提莫攻击(14)

在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。当提莫攻击艾希,艾希的中毒状态正好持续duration 秒。正式地讲,提莫在 t 发起发起攻击意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1)处于中毒状态。如果提莫在中毒影响结束 前 再次攻击,中毒状态计时器将会 重置 ,在新的攻击之后,中毒影响将会在 duration 秒后结束。给你一个 非递减 的整数数组 timeS.

2021-11-10 17:39:56 62

原创 leetcode刷题----祖玛游戏(14)

在这个祖玛游戏变体中,桌面上有一排彩球,每个球的颜色可能是:红色'R'、黄色'Y'、蓝色'B'、绿色'G'或白色'W'。你的手中也有一些彩球。你的目标是清空桌面上所有的球。每一回合:从你手上的彩球中选出任意一颗,然后将其插入桌面上那一排球中:两球之间或这一排球的任一端。 接着,如果有出现三个或者三个以上且颜色相同的球相连的话,就把它们移除掉。 如果这种移除操作同样导致出现三个或者三个以上且颜色相同的球相连,则可以继续移除这些球,直到不再满足移除条件。 ...

2021-11-09 15:01:38 3052

原创 leetcode刷题----猜数字游戏(13)

你在和朋友一起玩猜数字(Bulls and Cows)游戏,该游戏规则如下:写出一个秘密数字,并请朋友猜这个数字是多少。朋友每猜测一次,你就会给他一个包含下述信息的提示:猜测数字中有多少位属于数字和确切位置都猜对了(称为 "Bulls", 公牛), 有多少位属于数字猜对了但是位置不对(称为 "Cows", 奶牛)。也就是说,这次猜测中有多少位非公牛数字可以通过重新排列转换成公牛数字。给你一个秘密数字secret和朋友猜测的数字guess,请你返回对朋友这次猜测的提示。提示的...

2021-11-08 15:29:51 99

原创 leetCode 刷题 ----范围求和(12)

给定一个初始元素全部为0,大小为 m*n 的矩阵M以及在M上的一系列更新操作。操作用二维数组表示,其中的每个操作用一个含有两个正整数a 和 b 的数组表示,含义是将所有符合0 <= i < a 以及 0 <= j < b 的元素M[i][j]的值都增加 1。在执行给定的一系列操作后,你需要返回矩阵中含有最大整数的元素个数。示例 1:输入:m = 3, n = 3operations = [[2,2],[3,3]]输出: 4解释:初始状态...

2021-11-07 11:33:11 49

原创 leetCode 刷题 ----丢失的数字(11)

给定一个包含[0, n]中n个数的数组nums,找出[0, n]这个范围内没有出现在数组中的那个数。示例 1:输入:nums = [3,0,1]输出:2解释:n = 3,因为有 3 个数字,所以所有的数字都在范围 [0,3] 内。2 是丢失的数字,因为它没有出现在 nums 中。示例 2:输入:nums = [0,1]输出:2解释:n = 2,因为有 2 个数字,所以所有的数字都在范围 [0,2] 内。2 是丢失的数字,因为它没有出现在 nums 中。示例 3:输...

2021-11-06 12:34:14 121

原创 leetCode 刷题 -----最长定差子序列(11)

给你一个整数数组arr和一个整数difference,请你找出并返回 arr中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference 。子序列 是指在不改变其余元素顺序的情况下,通过删除一些元素或不删除任何元素而从 arr 派生出来的序列。示例 1:输入:arr = [1,2,3,4], difference = 1输出:4解释:最长的等差子序列是 [1,2,3,4]。示例2:输入:arr = [1,3,5,7], difference = 1输...

2021-11-05 09:51:39 139

原创 leetcode刷题----- 有效的完全平方数

给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。进阶:不要 使用任何内置的库函数,如sqrt 。解题思路:完全平方指用一个整数乘以自己例如1*1,2*2,3*3等,依此类推。若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数。完全平方数是非负数,而一个完全平方数的项有两个从0-N,取中点 看中点的平方是否大于num 如果中点的平方小于num,需要找更大的数字,所以取右边,不需要保留这个数字,L =...

2021-11-04 14:55:33 185

原创 leetCode 刷题 -----删除指定节点(7)

请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点head ,只能直接访问 要被删除的节点 。题目数据保证需要删除的节点 不是末尾节点 。示例 1:输入:head = [4,5,1,9], node = 5输出:[4,1,9]解释:指定链表中值为5的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9示例 2:输入:head = [4,5,1,9], node = 1输出:[4,5,9]解释...

2021-11-02 11:13:10 84

原创 leetCode 刷题 ----- 键盘行(5)

给你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘如下图所示。美式键盘 中:第一行由字符 "qwertyuiop" 组成。第二行由字符 "asdfghjkl" 组成。第三行由字符 "zxcvbnm" 组成。示例 1:输入:words = ["Hello","Alaska","Dad","Peace"]输出:["Alaska","Dad"]示例 2:输入:words = ["omk"]输出:[]示例 3:输入:words =

2021-10-31 11:18:18 110

原创 leetCode 刷题 ----- 只出现一次的数字(4)

分析1.首先根据只出现一次的数字I的做法,将所有数字异或起来,得到a^b2.现在我们要把啊a^b分离开来3.首先找到a^b中为1的那一个值,表示a和b中不一样的那一位,表示为第k位4.然后将nums中所有数根据第k位是0还是1分成两组5.分别异或,得到a和b代码如下classSolution{public:vector<int>singleNumber(vector<int>&nums){//怎么把3...

2021-10-30 14:44:23 615

原创 leetCode 刷题 ----- 路径交叉(3)

提示:1 <=distance.length <= 105 1 <=distance[i] <= 105问题分析:1.首先考虑,当线条数小于4时,是不肯有交叉的。每一个线段为1,线段是只能根据东南西北四个方向走动的。2.线段条数大于等于 4 时,开始出现交叉的可能性:第 4 条线段只可能与第 1 条线段交叉。第 5 条线段只可能与第 2、1 条线段交叉。第 6 条线段只可能与第 3、(2)、1 条线段交叉。第 7 条线段只可能与第 4...

2021-10-29 13:31:39 276

原创 LeetCode 刷题 ----- 重新排序得到 2 的幂(2)

题目描述:给定正整数 N,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。如果我们可以通过上述方式得到2 的幂,返回 true;否则,返回 false。示例如下:方法描述:首先我们可以先找到2的幂数的个数,如:中2的幂的个数是31个。我们可以先把数进行处理,然后统计他们中0~9数字出现的频率,再拿到n的时候同样统计0~9出现的频率,然后再把这些数来进行对比。 private static String countBits(int num) { ...

2021-10-28 12:06:28 185

原创 LeetCode 刷题 -----删除无效括号(1)

给你一个由若干括号和字母组成的字符串s,删除最小数量的无效括号,使得输入的字符串有效。返回所有可能的结果。答案可以按任意顺序返回。示例 1:输入:s = "()())()"输出:["(())()","()()()"]示例 2:输入:s = "(a)())()"输出:["(a())()","(a)()()"]示例 3:输入:s = ")("输出:[""]提示:1 <= s.length <= 25s 由小写英文字母以及括号 '(' 和 ...

2021-10-27 11:22:27 102

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除