- 博客(102)
- 收藏
- 关注
原创 leetcode hot100 第三题:最长连续序列(Java)
/ 只有当num-1不存在时,才开始向后遍历num+1,num+2,num+3......2.对一个连续序列中的元素进行删减,让其只在最小的元素才开始+1遍历,避免重复遍历。// 存储最长连续序列的长度。,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。// 建立一个存储所有数的哈希表,同时起到去重功能。class Solution { //方法一:HashSet。1.直接遍历查找改为哈希表查找,时间复杂度为O(1)// 遍历去重后的所有数字。
2024-07-01 11:25:47
385
原创 leetcode hot100 第二题:字母异位词分组(Java)
/ 先判断hashmap中是否有排序后的字母作为key,有的话直接获取list值,添加未排序的str。// hashmap中没有排序后的字母作为的key,创建一个新的list,添加str。//字符串转成字符数组。for(String str : strs){ //遍历字符串数组。class Solution { //方法一:排序,使用HashMap。是由重新排列源单词的所有字母得到的一个新单词。可以按任意顺序返回结果列表。
2024-07-01 10:41:05
492
原创 leetcode hot100 第一题:两数之和(Java)
/定义一个数组存储返回结果。// 定义一个数组存储返回结果。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。class Solution { // 方法二:HashMap。class Solution { //方法一:暴力破解。整数,并返回它们的数组下标。你可以按任意顺序返回答案。
2024-07-01 09:53:00
419
原创 Java后端开发学习历程
4、JavaSE-------------------------->25天。1、JavaWeb------------------------>19天。3、外卖项目------------------------>15天。2、SSM+SpringBoot------------->12天。
2024-05-26 20:27:05
308
原创 2024.4.30
2024.4.30——项目优化Day2-08。1.使用Redis缓存验证码和菜品套餐数据。2.使用MySQL主从复制实现读写分离。3.使用Git管理项目。
2024-04-30 21:23:35
127
原创 CV转java学习day1(2024.3.4)
3.报错:找不到主类 原因:C:\Windows\System32\cmd.exe应为D:\javacode,再输入cmd。2.文件编码一致(命令提示符为GBK编码,那么Sublime应该一致,注意中文!1.主方法别写错,static写成class了。韩顺平java零基础P1-P20。
2024-03-05 08:19:22
110
原创 LT简单题461-汉明距离
题目链接题目描述:两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给你两个整数x和y,计算并返回它们之间的汉明距离。示例 1:输入:x = 1, y = 4输出:2解释:1 (0 0 0 1)4 (0 1 0 0) ↑ ↑上面的箭头指出了对应二进制位不同的位置。示例 2:输入:x = 3, y = 1输出:1方法一:问题转化分析:两个整数之间的汉明距离是对应位置上数字不同的位数。根据以上...
2022-05-23 14:44:18
225
原创 LT简单题459-重复的子字符串
题目链接题目描述:给定一个非空的字符串s,检查是否可以通过由它的一个子串重复多次构成。示例 1:输入: s = "abab"输出: true解释: 可由子串 "ab" 重复两次构成。示例 2:输入: s = "aba"输出: false示例 3:输入: s = "abcabcabcabc"输出: true解释: 可由子串 "abc" 重复四次构成。 (或子串 "abcabc" 重复两次构成。)方法一:枚举(C++代码)class Solut..
2022-05-23 14:35:25
193
原创 LT简单题455-分发饼干
题目链接题目描述:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j]。如果 s[j]>= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例1:输入: g = [1,2,3], s = [1,1]输出: 1解释:你有三个孩子和...
2022-05-22 21:08:07
172
原创 LT简单题453-最小操作次数使数组元素相等
题目链接题目描述:给你一个长度为n的整数数组,每次操作将会使n - 1个元素增加1。返回让数组所有元素相等的最小操作次数。示例 1:输入:nums = [1,2,3]输出:3解释:只需要3次操作(注意每次操作会增加两个元素的值):[1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]示例 2:输入:nums = [1,1,1]输出:0方法一 :数学(C++代码)分析:每次操作既可以理解为使...
2022-05-22 15:00:33
198
原创 LT简单题448-找到所有数组中消失的数字
题目链接题目描述:给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。示例 1:输入:nums = [4,3,2,7,8,2,3,1]输出:[5,6]示例 2:输入:nums = [1,1]输出:[2]方法一:标记法(C++代码)分析:将所有正数减一作为数组下标,置对应数组值为负值。那么,仍为正数的位置下标加一即为(未出现过.
2022-05-21 22:47:28
135
原创 LT简单题441-排列硬币
题目链接题目描述:你总共有n枚硬币,并计划将它们按阶梯状排列。对于一个由 k 行组成的阶梯,其第 i 行必须正好有 i 枚硬币。阶梯的最后一行 可能 是不完整的。给你一个数字n ,计算并返回可形成 完整阶梯行 的总行数。示例 1:输入:n = 5输出:2解释:因为第三行不完整,所以返回 2 。示例 2:输入:n = 8输出:3解释:因为第四行不完整,所以返回 3 。方法一:数学(C++代码)方法二:二分查找(C++代码)class ...
2022-05-21 19:08:52
197
原创 LT简单题434-字符串中的单词数
题目链接题目描述:统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。请注意,你可以假定字符串里不包括任何不可打印的字符。示例:输入: "Hello, my name is John"输出: 5解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。方法一:一次遍历(C++代码)满足单词的第一个下标有以下两个条件: 该下标对应的字符不为空格; 该下标为初始下标或者该下标的前下标对应的字符为空格; clas
2022-05-21 18:47:53
176
原创 LT简单题415-字符串相加
题目链接题目描述:给定两个字符串形式的非负整数num1 和num2,计算它们的和并同样以字符串形式返回。你不能使用任何內建的用于处理大整数的库(比如 BigInteger),也不能直接将输入的字符串转换为整数形式。示例 1:输入:num1 = "11", num2 = "123"输出:"134"示例 2:输入:num1 = "456", num2 = "77"输出:"533"示例 3:输入:num1 = "0", num2 = "0"输出:"0"...
2022-05-13 11:29:55
110
原创 LT简单题414-第三大的数
题目链接题目描述:给你一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。示例 1:输入:[3, 2, 1]输出:1解释:第三大的数是 1 。示例 2:输入:[1, 2]输出:2解释:第三大的数不存在, 所以返回最大的数 2 。示例 3:输入:[2, 2, 3, 1]输出:1解释:注意,要求返回第三大的数,是指在所有不同数字中排第三大的数。此例中存在两个值为 2 的数,它们都排第二。在所有不同数字中排第三大的数为 1 。...
2022-05-13 10:53:04
158
原创 LT简单题412-Fizz Buzz
题目链接题目描述:给你一个整数 n ,找出从 1 到 n 各个整数的 Fizz Buzz 表示,并用字符串数组 answer(下标从 1 开始)返回结果,其中:answer[i] == "FizzBuzz" 如果 i 同时是 3 和 5 的倍数。answer[i] == "Fizz" 如果 i 是 3 的倍数。answer[i] == "Buzz" 如果 i 是 5 的倍数。answer[i] == i (以字符串形式)如果上述条件全不满足。示例 1:输入:n = 3输出:
2022-05-11 16:09:38
379
原创 LT简单题409-最长回文串
题目链接题目描述:给定一个包含大写字母和小写字母的字符串s,返回通过这些字母构造成的 最长的回文串。在构造过程中,请注意 区分大小写 。比如"Aa"不能当做一个回文字符串。示例 1:输入:s = "abccccdd"输出:7解释:我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。示例 2:输入:s = "a"输入:1示例 3:输入:s = "bb"输入: 2方法一:数组统计class Solution {pub...
2022-05-11 15:43:41
160
原创 LT简单题404-左叶子之和
题目链接题目描述:给定二叉树的根节点root,返回所有左叶子之和。示例 1:输入: root = [3,9,20,null,null,15,7]输出: 24解释: 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24示例2:输入: root = [1]输出: 0方法一:先序遍历(C++代码)/** * Definition for a binary tree node. * struct TreeNode { * in...
2022-05-10 15:52:11
525
原创 LT简单题392-判断子序列
题目链接题目描述:给定字符串 s 和 t ,判断 s 是否为 t 的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。示例 1:输入:s = "abc", t = "ahbgdc"输出:true示例 2:输入:s = "axc", t = "ahbgdc"输出:false方法一:字符串匹配(C++代码)class Solution {.
2022-05-10 15:23:40
163
原创 LT简单题389-找不同
题目链接题目描述:给定两个字符串 s 和 t ,它们只包含小写字母。字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。请找出在 t 中被添加的字母。示例 1:输入:s = "abcd", t = "abcde"输出:"e"解释:'e' 是那个被添加的字母。示例 2:输入:s = "", t = "y"输出:"y"方法一:数组计数(C++代码)class Solution {public: char findTheDifferen.
2022-05-10 15:00:18
301
原创 LT简单题387-字符串中的第一个唯一字符
题目链接题目描述:给定一个字符串 s ,找到 它的第一个不重复的字符,并返回它的索引 。如果不存在,则返回 -1 。示例 1:输入: s = "leetcode"输出: 0示例 2:输入: s = "loveleetcode"输出: 2示例 3:输入: s = "aabb"输出: -1提示:s只包含小写字母方法一:数组映射(C++代码)分析:第一次遍历整个字符串,将每个字符出现的次数存储到数组中;第二次遍历整个字符串,查看数组中出现的对应次.
2022-05-10 11:16:11
193
原创 LT简单题383-赎金信
题目链接题目描述:给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。如果可以,返回 true ;否则返回 false 。magazine 中的每个字符只能在 ransomNote 中使用一次。示例 1:输入:ransomNote = "a", magazine = "b"输出:false示例 2:输入:ransomNote = "aa", magazine = "ab"输出:false
2022-05-10 10:32:12
139
原创 LT简单题374-猜数字大小
题目链接题目描述:猜数字游戏的规则如下:每轮游戏,我都会从1到n 随机选择一个数字。 请你猜选出的是哪个数字。如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了。你可以通过调用一个预先定义好的接口 int guess(int num) 来获取猜测结果,返回值一共有 3 种可能的情况(-1,1或 0):-1:我选出的数字比你猜的数字小 pick < num1:我选出的数字比你猜的数字大 pick > num0:我选出的数字和你猜的数字一样。恭喜!你猜...
2022-05-09 16:17:38
265
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人