自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 leetcode刷题:391. 完美矩形

题目给你一个数组 rectangles ,其中 rectangles[i] = [xi, yi, ai, bi] 表示一个坐标轴平行的矩形。这个矩形的左下顶点是 (xi, yi) ,右上顶点是 (ai, bi) 。如果所有矩形一起精确覆盖了某个矩形区域,则返回 true ;否则,返回 false 。思路哈希表代码class Solution { public boolean isRectangleCover(int[][] rectangles) { long area

2021-11-16 20:30:03 99

原创 leetcode刷题:319. 灯泡开关

题目初始时有 n 个灯泡处于关闭状态。第一轮,你将会打开所有灯泡。接下来的第二轮,你将会每两个灯泡关闭一个。第三轮,你每三个灯泡就切换一个灯泡的开关(即,打开变关闭,关闭变打开)。第 i 轮,你每 i 个灯泡就切换一个灯泡的开关。直到第 n 轮,你只需要切换最后一个灯泡的开关。找出并返回 n 轮后有多少个亮着的灯泡。思路数论代码class Solution { public int bulbSwitch(int n) { return (int)Math.sqrt(n)

2021-11-15 10:58:30 4004

原创 leetcode刷题:677. 键值映射

题目实现一个 MapSum 类,支持两个方法,insert 和 sum:MapSum() 初始化 MapSum 对象void insert(String key, int val) 插入 key-val 键值对,字符串表示键 key ,整数表示值 val 。如果键 key 已经存在,那么原来的键值对将被替代成新的键值对。int sum(string prefix) 返回所有以该前缀 prefix 开头的键 key 的值的总和。思路hashmap代码class MapSum { Ma

2021-11-14 20:11:48 90

原创 leetcode刷题:520. 检测大写字母

题目我们定义,在以下情况时,单词的大写用法是正确的:全部字母都是大写,比如 “USA” 。单词中所有字母都不是大写,比如 “leetcode” 。如果单词不只含有一个字母,只有首字母大写, 比如 “Google” 。给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。思路简单模拟代码class Solution { public boolean detectCapitalUse(String word) { if (word.l

2021-11-13 11:33:42 3364

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

题目我们正在玩一个猜数游戏,游戏规则如下:我从 1 到 n 之间选择一个数字。你来猜我选了哪个数字。如果你猜到正确的数字,就会 赢得游戏 。如果你猜错了,那么我会告诉你,我选的数字比你的 更大或者更小 ,并且你需要继续猜数。每当你猜了数字 x 并且猜错了的时候,你需要支付金额为 x 的现金。如果你花光了钱,就会 输掉游戏 。给你一个特定的数字 n ,返回能够 确保你获胜 的最小现金数,不管我选择那个数字 。思路动态规划代码class Solution { public int

2021-11-12 16:55:00 81

原创 leetcode刷题:629. K个逆序对数组

题目给出两个整数 n 和 k,找出所有包含从 1 到 n 的数字,且恰好拥有 k 个逆序对的不同的数组的个数。逆序对的定义如下:对于数组的第i个和第 j个元素,如果满i < j且 a[i] > a[j],则其为一个逆序对;否则不是。由于答案可能很大,只需要返回 答案 mod 109 + 7 的值。思路动态规划+前缀和数组优化代码class Solution { int mod = (int)1e9+7; public int kInversePairs(int n

2021-11-11 17:13:10 72

原创 leetcode刷题:495. 提莫攻击

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

2021-11-10 16:50:34 4332

原创 leetcode刷题:488. 祖玛游戏

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

2021-11-09 16:02:29 99

原创 leetcode刷题:299. 猜数字游戏

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

2021-11-08 10:52:06 2590

原创 leetcode刷题:598. 范围求和 II

题目给定一个初始元素全部为 0,大小为 m*n 的矩阵 M 以及在 M 上的一系列更新操作。操作用二维数组表示,其中的每个操作用一个含有两个正整数 a 和 b 的数组表示,含义是将所有符合 0 <= i < a 以及 0 <= j < b 的元素 M[i][j] 的值都增加 1。在执行给定的一系列操作后,你需要返回矩阵中含有最大整数的元素个数。思路数组中a,b值的最小值,a*b即为数组中最大元素次数。代码class Solution { public int

2021-11-07 12:14:30 397

原创 leetcode刷题:268. 丢失的数字

题目给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。思路排序代码class Solution { public int missingNumber(int[] nums) { Arrays.sort(nums); int n = nums.length; for (int i = 0; i < n; i++) { if (nums[i] !=

2021-11-06 22:06:26 66

原创 leetcode刷题:1218. 最长定差子序列

题目给你一个整数数组 arr 和一个整数 difference,请你找出并返回 arr 中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference 。子序列 是指在不改变其余元素顺序的情况下,通过删除一些元素或不删除任何元素而从 arr 派生出来的序列。思路动态规划代码class Solution { public int longestSubsequence(int[] arr, int difference) { Map<Integer,In

2021-11-05 09:49:02 111

原创 leetcode刷题:367. 有效的完全平方数

题目给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。进阶:不要 使用任何内置的库函数,如 sqrt 。思路二分查找代码class Solution { public boolean isPerfectSquare(int num) { if(num==1)return true; int l =0,r=num/2; while(l<=r){

2021-11-04 09:24:19 83

原创 leetcode刷题:407. 接雨水 II

题目给你一个 m x n 的矩阵,其中的值均为非负整数,代表二维高度图每个单元的高度,请计算图中形状最多能接多少体积的雨水。思路最小堆代码class Solution { public int trapRainWater(int[][] heightMap) { int m = heightMap.length; int n = heightMap[0].length; if(m<=2||n<=2)return 0;

2021-11-03 10:57:31 61

原创 LeetCode刷题:237. 删除链表中的节点

题目请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 。题目数据保证需要删除的节点 不是末尾节点 。思路对于一般性的链表删除操作而言,我们需要知道待删除节点的前一节点与后一节点,并对两者建立联系。对于本题,由于我们只知道待删除节点本身,同时该链表为单链表(无法访问前一节点),因此我们只能先将后一节点的值复制到当前节点,然后将后一节点当作「待删除节点」来进行常规删除。代码class Solution {

2021-11-02 09:39:24 74

原创 leetcode刷题:575. 分糖果

题目给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果。你需要把这些糖果平均分给一个弟弟和一个妹妹。返回妹妹可以获得的最大糖果的种类数。思路贪心代码class Solution { public int distributeCandies(int[] candyType) { HashSet<Integer> set = new HashSet<>(); for(int i:candyType){

2021-11-01 19:50:03 77

原创 LeetCode刷题:500. 键盘行

题目给你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘如下图所示。美式键盘 中:第一行由字符 “qwertyuiop” 组成。第二行由字符 “asdfghjkl” 组成。第三行由字符 “zxcvbnm” 组成。思路先将键盘上的三行字母进行打表分类,依次检查 wordswords 中的单词中的每个字符是否都属于同一编号,若属于同一编号,则将其单词加入答案。代码class Solution { static String[] ss = ne

2021-10-31 14:35:50 88

原创 2021-10-30

只出现一次的数字 III给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。进阶:你的算法应该具有线性时间复杂度。你能否仅使用常数空间复杂度来实现?示例 1:输入:nums = [1,2,1,3,2,5]输出:[3,5]解释:[5, 3] 也是有效的答案。方法:哈希表思路与算法我们可以使用一个哈希映射统计数组中每一个元素出现的次数。在统计完成后,我们对哈希映射进行遍历,将所有只出现了一次的数放入答案

2021-10-30 19:24:02 52

原创 leetcode刷题335. 路径交叉

题目给你一个整数数组 distance 。从 X-Y 平面上的点 (0,0) 开始,先向北移动 distance[0] 米,然后向西移动 distance[1] 米,向南移动 distance[2] 米,向东移动 distance[3] 米,持续移动。也就是说,每次移动后你的方位会发生逆时针变化。判断你所经过的路径是否相交。如果相交,返回 true ;否则,返回 false 。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/self-cross

2021-10-29 10:00:04 128

原创 2021-10-28 leetcode刷题869. 重新排序得到 2 的幂

题目描述给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。思路预处理+哈希表class Solution { Set<String> set = new HashSet<>(); public boolean reorderedPowerOf2(int n) { init(); return set.contains

2021-10-28 10:50:35 61

原创 2021-10-27

Leetcode刷题java之301:删除无效的括号题目描述思路代码题目描述给你一个由若干括号和字母组成的字符串 s ,删除最小数量的无效括号,使得输入的字符串有效。返回所有可能的结果。答案可以按 任意顺序 返回。思路搜索 + 剪枝由于题目要求我们将所有(最长)合法方案输出,因此不可能有别的优化,只能进行「爆搜」。我们可以使用 DFS 实现回溯搜索。基本思路:我们知道所有的合法方案,必然有左括号的数量与右括号数量相等。首先我们令左括号的得分为 11;右括号的得分为 -1−1。则会有如下性

2021-10-27 11:35:03 62

目标检测数据集小目标扩增,小目标增强

目标检测数据集原图片小目标自动增加,并生成对应的txt文件。 有两种模式:模式一可以自己选择任意小目标图片进行任意次数的粘贴。需要自己准备小目标图片放在small文件夹下,准备对应的txt类别标签放在small_labels文件夹下。 模式二无需自己准备数据,默认将原图中的目标压缩成小目标粘贴一次,直接在原有的数据集上进行操作。 代码已工程化,只需要图片路径和对应的txt标签文件路径即可运行。详细请看说明文档。 两种模式不会损坏原本的数据集,会将新生成的带有小目标扩展的数据集另外存放,同时生成对应增强后的txt标签文件。

2023-09-15

BDD100K全部资源

百度网盘

2021-12-15

空空如也

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

TA关注的人

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