自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 动手学深度学习——softmax回归(原理解释+代码详解)

sum运算符:给定一个矩阵X,我们可以对所有元素求和(默认情况下)。也可以只求同一个轴上的元素,即同一列(轴0)或同一行(轴1)。对每个项求幂(使用exp);对每一行求和(小批量中每个样本是一行),得到每个样本的规范化常数;将每一行除以其规范化常数,确保结果的和为1。

2023-07-16 10:09:51 43566 16

原创 【leetcode】6. Z字形变换

之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。输入:s = “PAYPALISHIRING”, numRows = 3。输入:s = “PAYPALISHIRING”, numRows = 4。输入:s = “A”, numRows = 1。输出:“PAHNAPLSIIGYIR”输出:“PINALSIGYAHRPI”

2025-08-21 21:15:00 196

原创 【leetcode】202. 快乐数

然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 n 是 快乐数 就返回 true;不是,则返回 false。对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。如果这个过程 结果为 1,那么这个数就是快乐数。编写一个算法来判断一个数 n 是不是快乐数。

2025-08-21 21:00:00 371

原创 【leetcode】290. 单词规律

这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。输入: pattern = “abba”, s = “dog cat cat dog”输入:pattern = “abba”, s = “dog cat cat fish”输入: pattern = “aaaa”, s = “dog cat cat dog”给定一种规律 pattern 和一个字符串 s ,判断 s 是否遵循相同的规律。

2025-08-20 20:30:00 272

原创 【leetcode】205. 同构字符串

每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。输入:s = “paper”, t = “title”给定两个字符串 s 和 t ,判断它们是否是同构的。输入:s = “egg”, t = “add”输入:s = “foo”, t = “bar”

2025-08-20 20:15:00 346

原创 【leetcode】383. 赎金信

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。输入:ransomNote = “aa”, magazine = “aab”输入:ransomNote = “aa”, magazine = “ab”magazine 中的每个字符只能在 ransomNote 中使用一次。输入:ransomNote = “a”, magazine = “b”如果可以,返回 true;否则返回 false。

2025-08-19 20:28:05 229 1

原创 【leetcode】11. 盛最多水的容器

给定一个长度为 n 的整数数组 height。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。

2025-08-19 19:27:58 240

原创 【leetcode】167. 两数之和2——输入有序数组

如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 <= numbers.length。以长度为 2 的整数数组 [index1, index2] 的形式返回这两个整数的下标 index1 和 index2。因此 index1 = 1, index2 = 2。返回 [1, 2]。因此 index1 = 1, index2 = 2。输入:numbers = [2,7,11,15], target = 9。

2025-08-18 20:07:40 492

原创 【leetcode】392. 判断子序列

字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。如果有大量输入的 S,称作 S1, S2, …, Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。在这种情况下,你会怎样改变代码?给定字符串 s 和 t ,判断 s 是否为 t 的子序列。输入:s = “abc”, t = “ahbgdc”输入:s = “axc”, t = “ahbgdc”

2025-08-18 19:30:28 348

原创 【leetcode】14. 最长公共前缀

输入:strs = [“flower”,“flow”,“flight”]输入:strs = [“dog”,“racecar”,“car”]编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。解释:输入不存在公共前缀。

2025-08-17 21:00:00 245

原创 【leetcode】58. 最后一个单词的长度

给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。输入:s = " fly me to the moon "输入:s = “luffy is still joyboy”单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。解释:最后一个单词是长度为 6 的“joyboy”。解释:最后一个单词是“World”,长度为 5。解释:最后一个单词是“moon”,长度为 4。输入:s = “Hello World”

2025-08-17 20:30:00 280

原创 【leetcode】12. 整数转罗马数字

如果该值以 4 或 9 开头,使用 减法形式,表示从以下符号中减去一个符号,例如 4 是 5 (V) 减 1 (I): IV ,9 是 10 (X) 减 1 (I):IX。仅使用以下减法形式:4 (IV),9 (IX),40 (XL),90 (XC),400 (CD) 和 900 (CM)。你不能多次附加 5 (V),50 (L) 或 500 (D)。如果该值不是以 4 或 9 开头,请选择可以从输入中减去的最大值的符号,将该符号附加到结果,减去其值,然后将其余部分转换为罗马数字。输入:num = 58。

2025-08-16 20:30:00 248

原创 【leetcode】13. 罗马数字转整数

【代码】【leetcode】13. 罗马数字转整数。

2025-08-16 20:15:00 174

原创 【leetcode】274. H指数

根据维基百科上 h 指数的定义:h 代表“高引用次数” ,一名科研人员的 h 指数 是指他(她)至少发表了 h 篇论文,并且 至少 有 h 篇论文被引用次数大于等于 h。由于研究者有 3 篇论文每篇 至少 被引用了 3 次,其余两篇论文每篇被引用 不多于 3 次,所以她的 h 指数是 3。解释:给定数组表示研究者总共有 5 篇论文,每篇论文相应的被引用了 3, 0, 6, 1, 5 次。输入:citations = [3,0,6,1,5]输入:citations = [1,3,1]

2025-08-15 19:22:02 139

原创 【leetcode】45. 接雨水

【代码】【leetcode】45. 接雨水。

2025-08-15 19:21:53 594

原创 【leetcode】55. 跳跃游戏1

给你一个非负整数数组 nums ,你最初位于数组的 第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。解释:无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。判断你是否能够到达最后一个下标,如果可以,返回 true;否则,返回 false。输入:nums = [2,3,1,1,4]输入:nums = [3,2,1,0,4]

2025-08-13 20:28:41 241

原创 【leetcode】135. 分发糖果

给你一个整数数组 ratings 表示每个孩子的评分。解释:你可以分别给第一个、第二个、第三个孩子分发 2、1、2 颗糖果。解释:你可以分别给第一个、第二个、第三个孩子分发 1、2、1 颗糖果。请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目。从左到右,从右到左,满足评分高的孩子比评分低的孩子糖果数量多。第三个孩子只得到 1 颗糖果,这满足题面中的两个条件。相邻两个孩子中,评分更高的那个会获得更多的糖果。输入:ratings = [1,0,2]输入:ratings = [1,2,2]

2025-08-13 20:23:17 340

原创 【leetcode】134. 加油站

你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你无法返回 2 号加油站,因为返程需要消耗 4 升汽油,但是你的油箱只有 3 升汽油。输入: gas = [1,2,3,4,5], cost = [3,4,5,1,2]开往 3 号加油站,你需要消耗 5 升汽油,正好足够你返回到 3 号加油站。开往 0 号加油站,此时油箱有 4 - 3 + 2 = 3 升汽油。开往 1 号加油站,此时油箱有 3 - 3 + 3 = 3 升汽油。因此,3 可为起始索引。

2025-08-12 21:06:54 474

原创 【leetcode】45. 跳跃游戏2

每个元素 nums[i] 表示从索引 i 向后跳转的最大长度。返回到达 nums[n - 1] 的最小跳跃次数。生成的测试用例可以到达 nums[n - 1]。从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。输入: nums = [2,3,1,1,4]解释: 跳到最后一个位置的最小跳跃数是 2。输入: nums = [2,3,0,1,4]

2025-08-12 21:06:40 190

原创 【leetcode】189. 轮转数组

输入: nums = [1,2,3,4,5,6,7], k = 3。输入:nums = [-1,-100,3,99], k = 2。向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]向右轮转 1 步: [99,-1,-100,3]向右轮转 2 步: [3,99,-1,-100]输出: [5,6,7,1,2,3,4]输出:[3,99,-1,-100]

2025-08-11 21:14:47 299

原创 【leetcode】80. 删除有序数组中的重复项2

解释:函数应返回新长度 length = 7, 并且原数组的前七个元素被修改为 0, 0, 1, 1, 2, 3, 3。解释:函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3。输入:nums = [0,0,1,1,1,1,2,3,3]输出:7, nums = [0,0,1,1,2,3,3]输出:5, nums = [1,1,2,2,3]// 在函数里修改输入数组对于调用者是可见的。输入:nums = [1,1,1,2,2,3]

2025-08-11 21:14:33 422

原创 【leetcode】3202. 找出有效子序列的最大长度(2)

输入:nums = [1,4,2,3,1,4], k = 3。输入:nums = [1,2,3,4,5], k = 2。给你一个整数数组 nums 和一个 正 整数 k。最长有效子序列是 [1, 2, 3, 4, 5]。最长有效子序列是 [1, 4, 1, 4]。返回 nums 的 最长有效子序列 的长度。

2025-07-18 22:17:07 1067

原创 【leetcode】3201. 找出有效子序列的最大长度(1)

一个 子序列 指的是从原数组中删除一些元素(也可以不删除任何元素),剩余元素保持原来顺序组成的新数组。最长的有效子序列是 [1, 2, 1, 2, 1, 2]。输入: nums = [1,2,1,1,2,1,2]返回 nums 的 最长的有效子序列 的长度。最长的有效子序列是 [1, 2, 3, 4]。输入: nums = [1,2,3,4]最长的有效子序列是 [1, 3]。输入: nums = [1,3]给你一个整数数组 nums。

2025-07-18 22:14:09 376

原创 【leetcode】852. 山脉数组的封顶索引

给定一个长度为 n 的整数 山脉 数组 arr ,其中的值递增到一个 峰值元素 然后递减。你必须设计并实现时间复杂度为 O(log(n)) 的解决方案。输入:arr = [0,10,5,2]输入:arr = [0,2,1,0]输入:arr = [0,1,0]返回峰值元素的下标。

2025-07-17 23:10:20 449

原创 【leetcode】2586. 统计范围内的元音字符串数

如果字符串以元音字母开头并以元音字母结尾,那么该字符串就是一个 元音字符串 ,其中元音字母是 ‘a’、‘e’、‘i’、‘o’、‘u’。输入:words = [“hey”,“aeo”,“mu”,“ooo”,“artro”], left = 1, right = 4。输入:words = [“are”,“amy”,“u”], left = 0, right = 2。返回 words[i] 是元音字符串的数目,其中 i 在闭区间 [left, right] 内。

2025-07-17 23:08:38 357

原创 【leetcode】1422. 分割字符串的最大得分

解释:当 左子字符串 = “00” 且 右子字符串 = “111” 时,我们得到最大得分 = 2 + 3 = 5。左子字符串 = “0” 且 右子字符串 = “11101”,得分 = 1 + 4 = 5。左子字符串 = “011” 且 右子字符串 = “101”,得分 = 1 + 2 = 3。左子字符串 = “0111” 且 右子字符串 = “01”,得分 = 1 + 1 = 2。左子字符串 = “01110” 且 右子字符串 = “1”,得分 = 2 + 1 = 3。输入:s = “00111”

2025-07-16 21:18:29 227

原创 【leetcode】867. 转置矩阵

【代码】【leetcode】867. 转置矩阵。

2025-07-16 21:18:22 308

原创 【leetcode】1470. 重新排列数组

解释:由于 x1=2, x2=5, x3=1, y1=3, y2=4, y3=7 ,所以答案为 [2,3,5,4,1,7],xn,y1,y2,…,yn] 的格式排列。请你将数组按 [x1,y1,x2,y2,…输入:nums = [1,2,3,4,4,3,2,1], n = 4。输入:nums = [2,5,1,3,4,7], n = 3。输入:nums = [1,1,2,2], n = 2。输出:[1,4,2,3,3,2,4,1]输出:[2,3,5,4,1,7]输出:[1,2,1,2]

2025-07-15 22:15:13 380

原创 【leetcode】263.丑数

给你一个整数 n ,请你判断 n 是否为 丑数。如果是,返回 true;否则,返回 false。解释:14 不是丑数,因为它包含了另外一个质因数 7。丑数 就是只包含质因数 2、3 和 5 的 正 整数。解释:6 = 2 × 3。解释:1 没有质因数。

2025-07-15 22:15:05 530

原创 【leetcode】326. 3的幂

给定一个整数,写一个函数来判断它是否是 3 的幂次方。如果是,返回 true;否则,返回 false。整数 n 是 3 的幂次方需满足:存在整数 x 使得 n == 3x。

2025-07-14 23:41:03 253

原创 【leetcode】231. 2的幂

给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true;否则,返回 false。如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。解释:24 = 16。

2025-07-14 23:40:52 419

原创 【leetcode】258. 各位相加

数字:xyz=100x+10y+z=99x+x+9y+z=(99x+9y)+(x+y+z),也就是说xyz和(x+y+z)对于9来说是同模的,即xyz%9=(x+y+z)%9,这里假设(x+y+z)=ab,同理(ab%9=(a+b)%9),可以一直递归下去直到一位数字,也就是说我们可以得到模9的结果,但是我们需要的是模10的结果,num%10=((num-1)%9+1)%10=(num-1)%9+1,这里需要注意的是,1<=num<=9,然后写代码即可。输入: num = 38。输入: num = 0。

2025-07-13 19:45:00 437

原创 【leetcode】1281. 整数的各位积和之差

给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。各位数之积 = 4 * 4 * 2 * 1 = 32。各位数之和 = 4 + 4 + 2 + 1 = 11。各位数之积 = 2 * 3 * 4 = 24。各位数之和 = 2 + 3 + 4 = 9。结果 = 32 - 11 = 21。结果 = 24 - 9 = 15。输入:n = 4421。输入:n = 234。

2025-07-13 19:00:00 208

原创 【leetcode】709. 转换成小写字母

给你一个字符串 s ,将该字符串中的大写字母转换成相同的小写字母,返回新的字符串。输入:s = “LOVELY”输入:s = “Hello”输入:s = “here”输出:“lovely”输出:“hello”

2025-07-12 19:30:00 431

原创 【leetcode】1757. 可回收且低脂的产品

【代码】【leetcode】1757. 可回收且低脂的产品。

2025-07-12 19:15:00 133

原创 【leetcode】584. 寻找用户推荐人

【代码】【leetcode】584. 寻找用户推荐人。

2025-07-11 20:30:00 239

原创 【leetcode】1486. 数组异或操作

数组 nums 定义为:nums[i] = start + 2*i(下标从 0 开始)且 n == nums.length。解释:数组 nums 为 [0, 2, 4, 6, 8],其中 (0 ^ 2 ^ 4 ^ 6 ^ 8) = 8。解释:数组 nums 为 [3, 5, 7, 9],其中 (3 ^ 5 ^ 7 ^ 9) = 8.输入:n = 10, start = 5。输入:n = 5, start = 0。输入:n = 4, start = 3。输入:n = 1, start = 7。

2025-07-11 20:15:00 453

原创 【leetcode】2236. 判断根节点是否等于子节点之和

给你一个 二叉树 的根结点 root,该二叉树由恰好 3 个结点组成:根结点、左子结点和右子结点。如果根结点值等于两个子结点值之和,返回 true ,否则返回 false。

2025-07-10 20:45:00 500

原创 【leetcode】2413. 最小偶倍数

解释:6 和 2 的最小公倍数是 6。注意数字会是它自身的倍数。给你一个正整数 n ,返回 2 和 n 的最小公倍数(正整数)。解释:5 和 2 的最小公倍数是 10。

2025-07-10 20:30:00 474

原创 【leetcode】2469. 温度转换

你需要将摄氏度转换为 开氏度(Kelvin)和 华氏度(Fahrenheit),并以数组 ans = [kelvin, fahrenheit] 的形式返回结果。给你一个四舍五入到两位小数的非负浮点数 celsius 来表示温度,以 摄氏度(Celsius)为单位。解释:122.11 摄氏度:转换为开氏度是 395.26 ,转换为华氏度是 251.798。解释:36.50 摄氏度:转换为开氏度是 309.65 ,转换为华氏度是 97.70。返回数组 ans。输入:celsius = 36.50。

2025-07-09 20:30:00 128

空空如也

空空如也

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

TA关注的人

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