自定义博客皮肤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)
  • 收藏
  • 关注

原创 打卡21天:完美矩形

文章目录题目描述一、解题思路二、完整代码总结 题目描述 给你一个数组 rectangles ,其中 rectangles[i] = [xi, yi, ai, bi] 表示一个坐标轴平行的矩形。这个矩形的左下顶点是 (xi, yi) ,右上顶点是 (ai, bi) 。 如果所有矩形一起精确覆盖了某个矩形区域,则返回 true ;否则,返回 false 。 提示: 1 <= rectangles.length <= 2 * 104 rectangles[i].length == 4 -10^5

2021-11-16 22:35:58 182

原创 打卡20天:灯泡开关

文章目录题目描述一、解题思路二、完整代码三、一种暴力解法总结 题目描述 初始时有 n 个灯泡处于关闭状态。第一轮,你将会打开所有灯泡。接下来的第二轮,你将会每两个灯泡关闭一个。 第三轮,你每三个灯泡就切换一个灯泡的开关(即,打开变关闭,关闭变打开)。第 i 轮,你每 i 个灯泡就切换一个灯泡的开关。直到第 n 轮,你只需要切换最后一个灯泡的开关。 找出并返回 n 轮后有多少个亮着的灯泡。 提示: 0 <= n <= 109 示例1: 输入:n = 3 输出:1 解释: 初始时, 灯泡状态

2021-11-15 15:17:29 199

原创 打卡19天:键值映射

文章目录题目描述一、解题思路二、完整代码 题目描述 实现一个 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 23:34:19 314

原创 打卡18天:检测大写字母

文章目录题目描述一、思路与代码1.思路2.完整代码二、代码优化1.优化思路2.完整代码总结 题目描述 我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如 “USA” 。 单词中所有字母都不是大写,比如 “leetcode” 。 如果单词不只含有一个字母,只有首字母大写, 比如 “Google” 。 给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。 提示: 1 <= word.length <= 100 word 由小写和大写英文

2021-11-13 11:04:53 444

原创 打卡17天:猜数字大小 II

文章目录题目描述一、解题思路二、完整代码总结 题目描述 我们正在玩一个猜数游戏,游戏规则如下: 我从 1 到 n 之间选择一个数字。 你来猜我选了哪个数字。 如果你猜到正确的数字,就会 赢得游戏 。 如果你猜错了,那么我会告诉你,我选的数字比你的 更大或者更小 ,并且你需要继续猜数。 每当你猜了数字 x 并且猜错了的时候,你需要支付金额为 x 的现金。如果你花光了钱,就会 输掉游戏 。 给你一个特定的数字 n ,返回能够 确保你获胜 的最小现金数,不管我选择那个数字 。 提示: 1 <= n &l

2021-11-12 17:43:31 159

原创 打卡16天:K个逆序对数组

文章目录题目描述一、解题思路二、完整代码总结 题目描述 给出两个整数 n 和 k,找出所有包含从 1 到 n 的数字,且恰好拥有 k 个逆序对的不同的数组的个数。 逆序对的定义如下:对于数组的第i个和第 j个元素,如果满i < j且 a[i] > a[j],则其为一个逆序对;否则不是。 由于答案可能很大,只需要返回 答案 mod 109 + 7 的值。 示例 1: 输入: n = 3, k = 0 输出: 1 解释: 只有数组 [1,2,3] 包含了从1到3的整数并且正好拥有 0 个逆序对

2021-11-11 22:59:48 278

原创 打卡15天:提莫攻击

文章目录一、 题目描述二、思路及代码1.解题思路2.完整代码总结 一、 题目描述 在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。 当提莫攻击艾希,艾希的中毒状态正好持续 duration 秒。 正式地讲,提莫在 t 发起发起攻击意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1)处于中毒状态。如果提莫在中毒影响结束 前 再次攻击,中毒状态计时器将会 重置 ,在新的攻击之后,中毒影响

2021-11-10 14:49:28 148

原创 打卡14天:祖玛游戏

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

2021-11-09 17:55:46 150

原创 打卡13:猜数字游戏

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

2021-11-08 11:00:56 391

原创 打卡十二天:范围求和 II

文章目录题目描述一、我的最初解法1. 思路2. 代码3. 缺点二、我的最终解法1.思路2.完整代码总结 题目描述 给定一个初始元素全部为 0,大小为 m*n 的矩阵 M 以及在 M 上的一系列更新操作。 操作用二维数组表示,其中的每个操作用一个含有两个正整数 a 和 b 的数组表示,含义是将所有符合 0 <= i < a 以及 0 <= j < b 的元素 M[i][j] 的值都增加 1。 在执行给定的一系列操作后,你需要返回矩阵中含有最大整数的元素个数。 示例 1: 输入: m

2021-11-07 12:38:35 127

原创 打卡第十一天:丢失的数字

文章目录题目描述1. 示例2. 进阶一、解题思路1. 题目解析2. 具体思路二、代码实现1. 完整代码2. 复杂度分析三、进阶:异或实现总结 题目描述 给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。 提示: n == nums.length 1 <= n <= 104 0 <= nums[i] <= n nums 中的所有数字都 独一无二 1. 示例 示例 1: 输入:nums = [3,0,1] 输出:2 解

2021-11-06 13:00:22 114

原创 打卡第十天:最长定差子序列

文章目录题目描述一、动态规划求解二、一个笨方法:双循环遍历总结 题目描述 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 一、动态规划求解 当前的元素arr[i]能否构成最长定差子序列,是由上一个元素arr[i]-difference所能构成的最长定差子序列的长度决定的,故有: len(arr[i]) = len(arr[i] - difference)+1 据此式,代码如下: cla

2021-11-05 23:37:27 108

原创 打卡第九天:有效的完全平方数

题目描述 给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。 进阶:不要 使用任何内置的库函数,如 sqrt 。 解题思路 这里的实现没有使用任何内置函数。 单提出num为1的情况,直接返回true。 用一个for循环,从 1 开始,从小到大遍历所有正整数,寻找是否存在满足 ii = num的的正整数 i,存在就返回true。若出现 ii >num,则可以返回false。 完整代码 class Solution { p

2021-11-04 10:11:31 105

原创 打卡第八天:接雨水

文章目录题目&示例一、思路二、完整代码总结 题目&示例 给你一个 m x n 的矩阵,其中的值均为非负整数,代表二维高度图每个单元的高度,请计算图中形状最多能接多少体积的雨水。 提示: m == heightMap.length n == heightMap[i].length 1 <= m, n <= 200 0 <= heightMap[i][j] <= 2 * 104 一、思路 分析题目,可以知道heightMap是一个二维数组,我门把数组的第一个下

2021-11-03 22:49:20 137

原创 打卡第七天:删除链表中的节点

文章目录题目一、思路二、代码实现1.ListNode的定义2.完整代码总结 题目 请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问要被删除的节点 。题目数据保证需要删除的节点 不是末尾节点 。 提示: 链表中节点的数目范围是 [2, 1000] -1000 <= Node.val <= 1000 链表中每个节点的值都是唯一的 需要删除的节点 node 是 链表中的一个有效节点 ,且 不是末尾节点 一、思路 常规思路

2021-11-02 23:06:56 113

原创 打卡第六天:分糖果

文章目录题目一、解题思路二、代码实现1.用List集合2.用Set集合 题目 Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] 。Alice 注意到她的体重正在增长,所以前去拜访了一位医生。 医生建议 Alice 要少摄入糖分,只吃掉她所有糖的 n / 2 即可(n 是一个偶数)。Alice 非常喜欢这些糖,她想要在遵循医生建议的情况下,尽可能吃到最多不同种类的糖。 给你一个长度为 n 的整数数组 candyType ,返回: Alice 在仅吃掉 n / 2 枚糖的情况下,可

2021-11-01 22:18:53 315

原创 打卡第五天:键盘行

打卡第五天:键盘行题目一、解题思路二、完整代码 题目 给你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘内容如下所示。 美式键盘中: 第一行由字符 “qwertyuiop” 组成。 第二行由字符 “asdfghjkl” 组成。 第三行由字符 “zxcvbnm” 组成。 一、解题思路 今天的题目比较简单,简要说说。 先将键盘上的三行字母分类::“qwertyuiop”,“asdfghjkl” ,“zxcvbnm” 。 依次检查 words数组中单词的每个字符是

2021-10-31 23:48:10 167

原创 打卡第四天:只出现一次的数字

打卡第四天:只出现一次的数字题目描述一、思路二、完整代码三、进阶 题目描述 给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。 进阶:你的算法应该具有线性时间复杂度。你能否仅使用常数空间复杂度来实现? 一、思路 利用一个双重循环,把每一个数和数组里其他数比较,遇到相等的就终止内层循环(即这个数不符合要求,无需再比较),没有相等的则记录下来。 二、完整代码 class Solution { public

2021-10-30 23:36:03 99

原创 打卡第三天:路径交叉

打卡第三天:路径交叉题目描述找出所有路径交叉的情况(归纳法)1. 第一种交叉情况2. 第二种交叉情况3. 第三种交叉情况4. 完整代码如下图的邻接矩阵存储路线(耗内存)1.思路2.完整代码如下用集合存储坐标(耗时间)1.完整代码如下2.完整代码如下总结 题目描述 给你一个整数数组 distance 。 从 X-Y 平面上的点 (0,0) 开始,先向北移动 distance[0] 米,然后向西移动 distance[1] 米,向南移动 distance[2] 米,向东移动 distance[3] 米,持续移

2021-10-29 23:53:39 152

原创 打卡第二天:重排序得到二的冥

重排序得到2的冥 给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。 如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。 提示: 1 <= N <= 10^9 解题思路 首先获得给定范围内所有2的冥,并将其转换为字符串,并使该字符串中所有字符有序。将其存入集合set。 首先给出method函数:将数字转为字符串并排序 public String method(int n){ String s = String.valueO

2021-10-28 23:44:14 154

原创 打卡第一天:删除无效的括号

打卡第一天:删除无效的括号题目描述解题思路判断括号是否有效最大有效括号的左括号数(left)、右括号数(right)回溯完整代码如下 题目描述 给你一个由若干括号和字母组成的字符串 s ,删除最小数量的无效括号,使得输入的字符串有效。 返回所有可能的结果。答案可以按 任意顺序 返回。 解题思路 主要是三个部分: 判断括号是否有效的函数 judge; 找出最大有效括号的左括号数(left)和右括号数(right); 以回溯的方式(backtrack)删除多余的括号,并用judge验证所得结果是否有效。 判

2021-10-27 23:21:21 142

set转成list集合再排序输出

Java相关 public static void main(String[] args) { User u1=new User(1, "zhangsan"); User u2=new User(2, "lisan"); User u3=new User(3, "wangsan"); //放入到Set集合中 Set userset=new HashSet(); userset.add(u1); userset.add(u2); userset.add(u3);

2020-01-03

空空如也

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

TA关注的人

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