摘要:1 ~ 100 28. 实现 strStr()『简单』 38. 外观数列『简单』 101 ~ 200 201 ~ 300 301 ~ 400 401 ~ 500 441. 排列硬币『简单』 443. 压缩字符串『简单』 455. 分发饼干『简单』 463. 岛屿的周长『简单』 482. 密钥格式化『 阅读全文
posted @ 2020-05-13 20:43 知音12138 阅读(47) 评论(0) 推荐(0) 编辑
摘要:博客 GitHub 码云 博客园 CSDN 廖雪峰的官方网站 阮一峰的个人网站 xiaolai (xiaolai)——李笑来的开源作品 我没有三颗心脏的博客 美团技术团队 Docs4dev 免费的在线API文档(Spring Framework,Spring Boot,Java等) 在线API文档 阅读全文
posted @ 2020-03-27 19:52 知音12138 阅读(57) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 674. 最长连续递增序列 题目相关标签:数组 **注意:**数组长度不会超过10000。 二、解题思路 初始化变量,最大长度与递增元素数量初始值为 1 遍历数组,从索引 1 开始 判断当前遍历元素是否大于前一位元素 若大于,说明为递增序列,则记录长度的 阅读全文
posted @ 2020-07-13 21:22 知音12138 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 680. 验证回文字符串 Ⅱ 题目相关标签:字符串 注意: 字符串只包含从 a-z 的小写字母。字符串的最大长度是50000。 二、解题思路 通过左右双指针遍历字符串 s 若左右指针上的元素不相等时,说明字符串 s 不是回文串 再次判断是否可以通过删除一 阅读全文
posted @ 2020-07-13 21:13 知音12138 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 686. 重复叠加字符串匹配 题目相关标签:字符串 注意: A 与 B 字符串的长度在1和10000区间范围内。 二、解题思路 通过对字符串 A 叠加 N 次使得新字符串中包含字符串 B,那么简单的思路就是循环对字符串 A 叠加,若新字符串中包含字符串 阅读全文
posted @ 2020-07-13 20:00 知音12138 阅读(48) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 693. 交替位二进制数 题目相关标签:位运算 二、解题思路 2.1 位运算——逐位比较 记录下数值二进制位的最低位 循环获取数值二进制位的最低位,判断当前获取的最低位,是否与之前记录的最低位相同 相同时,返回 false,说明非交替位 不同时,更新最低 阅读全文
posted @ 2020-07-07 20:57 知音12138 阅读(42) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 704. 二分查找 题目相关标签:二分查找 提示: 你可以假设 nums 中的所有元素是不重复的。 n 将在 [1, 10000]之间。 nums 的每个元素都将在 [-9999, 9999]之间。 二、解题思路 二分查找的应用 三、代码实现 publi 阅读全文
posted @ 2020-07-07 20:32 知音12138 阅读(35) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 709. 转换成小写字母 题目相关标签:字符串 二、解题思路 遍历字符串转化成的字符数组 判断当前遍历字符是否为大写字母 是大写字母时,通过加 32 再转换为 char 值,实现大写变小写 三、代码实现 public static String toLo 阅读全文
posted @ 2020-07-07 20:21 知音12138 阅读(60) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 717. 1比特与2比特字符 题目**相关标签:**数组 说明: 1 <= len(bits) <= 1000. bits[i] 总是0 或 1. 二、解题思路 据题意:给定的字符串总是由0结束。 可以根据数组最后的 0 之前的连续 1 的个数来判断最后 阅读全文
posted @ 2020-07-07 20:13 知音12138 阅读(51) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 728. 自除数 题目**相关标签:**数学 说明: 每个输入参数的边界满足 1 <= left <= right <= 10000。 二、解题思路 遍历 left 到 right 元素,对每个数值元素进行判断 若遍历元素在 [1, 9] 区间内,加入结 阅读全文
posted @ 2020-07-06 21:01 知音12138 阅读(42) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 771. 宝石与石头 题目**相关标签:**哈希表 说明: S 和 J 最多含有50个字母。 J 中的字符不重复。 二、解题思路 2.1 哈希表——Set集合 遍历字符串 J,将字符添加到 Set 集合中 遍历字符串 S,若遍历的字符在 Set 集合中, 阅读全文
posted @ 2020-07-06 20:43 知音12138 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 796. 旋转字符串 说明: A 和 B 长度不超过 100。 二、解题思路 字符串 A 拼接两次后形成的字符串中一定包含了旋转后的字符串 两个字符串长度一致且字符串 B 存在于字符串 A 拼接两次后形成的字符串中时,返回 false 三、代码实现 pu 阅读全文
posted @ 2020-07-02 22:28 知音12138 阅读(56) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 821. 字符的最短距离 说明: 字符串 S 的长度范围为 [1, 10000]。 C 是一个单字符,且保证是字符串 S 里的字符。 S 和 C 中的所有字母均为小写字母。 二、解题思路 定义两个数组,分别用于记录正序与倒序遍历字符串 S 时,各元素与字 阅读全文
posted @ 2020-07-02 22:20 知音12138 阅读(66) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 830. 较大分组的位置 题目相关标签:数组 说明: 1 ⇐ S.length ⇐ 1000 二、解题思路 遍历字符串,判断当前元素与前一元素是否相同,相同时,记录次数的变量加 1 不同时,判断上一元素连续出现的次数是否大于等于 3,大于等于时,添加起始 阅读全文
posted @ 2020-07-02 22:07 知音12138 阅读(42) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 844. 比较含退格的字符串 题目相关标签:栈、双指针 提示: 1 <= S.length <= 200 1 <= T.length <= 200 S 和 T 只含有小写字母以及字符 '#'。 二、解题思路 对两个字符串进行去 # 号的操作 遍历两个字符 阅读全文
posted @ 2020-07-02 21:50 知音12138 阅读(33) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 868. 二进制间距 题目相关标签:数学 提示: 1 ⇐ N ⇐ 10^9 二、解题思路 循环对数字 N 进行二进制的舍位,判断最低位是否为 1 为 1 时,将之间记录的 maxLen 与本次两个 1 间隔的数量比较,取最大值,并将 count 重置为 阅读全文
posted @ 2020-07-01 22:12 知音12138 阅读(50) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 884. 两句话中的不常见单词 题目相关标签:哈希表 提示: 0 <= A.length <= 200 0 <= B.length <= 200 A 和 B 都只包含空格和小写字母。 二、解题思路 定义 Map,并通过字符串的 split() 方法,对字 阅读全文
posted @ 2020-07-01 21:41 知音12138 阅读(62) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 896. 单调数列 题目相关标签:数组 提示: 1 <= A.length <= 50000 -100000 <= A[i] <= 100000 二、解题思路 2.1 线性扫描法 计算得到数组元素末尾与首位的差 diff,差为 0 时,则数组中元素全为重 阅读全文
posted @ 2020-07-01 21:31 知音12138 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 905. 按奇偶排序数组 题目相关标签:数组 提示: 1 <= A.length <= 5000 0 <= A[i] <= 5000 二、解题思路 定义左右指针,遍历数组 左指针右移查找奇数元素,查找到时,右指针左移查找偶数元素,当左右指针上的元素分别为 阅读全文
posted @ 2020-07-01 21:08 知音12138 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 917. 仅仅反转字母 题目相关标签:字符串 提示: S.length <= 100 33 <= S[i].ASCIIcode <= 122 S 中不包含 \ or " 二、解题思路 定义左右指针,遍历字符串 s 左指针右移查找字母字符元素,为字母时,右 阅读全文
posted @ 2020-07-01 20:59 知音12138 阅读(63) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 922. 按奇偶排序数组 II 题目相关标签:排序、数组 提示: 2 <= A.length <= 20000 A.length % 2 == 0 0 <= A[i] <= 1000 二、解题思路 2.1 新数组存储方式 创建与数组 A 相同长度的新数组 阅读全文
posted @ 2020-06-24 21:03 知音12138 阅读(63) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 925. 长按键入 题目相关标签:双指针、字符串 提示: name.length <= 1000 typed.length <= 1000 name 和 typed 的字符都是小写字母。 二、解题思路 对两个字符串进行转换为字符数组的操作 遍历两个字符数 阅读全文
posted @ 2020-06-24 20:44 知音12138 阅读(55) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 961. 重复 N 次的元素 题目相关标签:哈希表 提示: 4 <= A.length <= 10000 0 <= A[i] < 10000 A.length 为偶数 二、解题思路 2.1 Set 方式 据题意:2N 个长度的数组中,有 N + 1 个不 阅读全文
posted @ 2020-06-23 21:02 知音12138 阅读(49) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 976. 三角形的最大周长 题目相关标签:排序、数学 提示: 3 <= A.length <= 10000 1 <= A[i] <= 10^6 二、解题思路 首先对数组进行排序 倒序遍历数组,对范围内的数组元素进行比较 判断当前遍历的元素是否小于前两位元 阅读全文
posted @ 2020-06-23 20:28 知音12138 阅读(56) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 977. 有序数组的平方 题目相关标签:数组、双指针 提示: 1 <= A.length <= 10000 -10000 <= A[i] <= 10000 A 已按非递减顺序排序。 二、解题思路 定义左右双指针,结果数组及 index 索引 通过双指针遍 阅读全文
posted @ 2020-06-23 19:50 知音12138 阅读(56) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 989. 数组形式的整数加法 题目相关标签:数组 提示: 1 ⇐ A.length ⇐ 10000 0 ⇐ A[i] ⇐ 9 0 ⇐ K ⇐ 10000 如果 A.length > 1,那么 A[0] != 0 二、解题思路 2.1 数字相加 定义变量 阅读全文
posted @ 2020-06-22 20:26 知音12138 阅读(63) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 1002. 查找常用字符 题目相关标签:数组、哈希表 提示: 1 <= A.length <= 100 1 <= A[i].length <= 100 A[i][j] 是小写字母 二、解题思路 通过哈希数组记录下字符串数组中第一个字符串中各元素出现的次数 阅读全文
posted @ 2020-06-22 19:46 知音12138 阅读(80) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 1108. IP 地址无效化 题目相关标签:字符串 提示: 给出的 address 是一个有效的 IPv4 地址 二、解题思路 2.1 StringBuilder 方式 创建 StringBuilder 对象,并遍历 address 字符串 判断当前遍历 阅读全文
posted @ 2020-06-21 21:12 知音12138 阅读(61) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 1137. 第 N 个泰波那契数 题目相关标签:递归 提示: 0 <= n <= 37 答案保证是一个 32 位整数,即 answer <= 2^31 - 1。 二、解题思路 因 0 ⇐ n ⇐ 37,则创建长度为 38 的 int 数组 nums 据题 阅读全文
posted @ 2020-06-21 19:55 知音12138 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 1154. 一年中的第几天 题目相关标签:数学 提示: date.length == 10 date[4] == date[7] == '-',其他的 date[i] 都是数字。 date 表示的范围从 1900 年 1 月 1 日至 2019 年 12 阅读全文
posted @ 2020-06-21 19:46 知音12138 阅读(65) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 1185. 一周中的第几天 题目相关标签:数组 提示: 给出的日期一定是在 1971 到 2100 年之间的有效日期。 二、解题思路 以1971年1月1日为星期五为基准,最终计算得到给定日期与 1971年1月1日之间的天数 索引即天数 % 7,,返回 s 阅读全文
posted @ 2020-06-21 19:21 知音12138 阅读(56) 评论(0) 推荐(0) 编辑
摘要:题目来源于力扣(LeetCode) 一、题目 1207. 独一无二的出现次数 题目相关标签:哈希表 提示: 1 <= arr.length <= 1000 -1000 <= arr[i] <= 1000 二、解题思路 2.1 哈希表 遍历 arr 数组,用哈希表记录下每个数组元素出现的次数 遍历哈希 阅读全文
posted @ 2020-06-21 19:07 知音12138 阅读(93) 评论(0) 推荐(0) 编辑