
LeetCode
文章平均质量分 68
语言是沟通的工具,文字是记录存证的工具,而文字化的过程,又可以让思考彻底沉淀,善于使用文字的人,通常是深沉而严谨的。
萌萌滴太阳
语言是沟通的工具,文字是记录存证的工具,而文字化的过程,又可以让思考彻底沉淀,善于使用文字的人,通常是深沉而严谨的。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
leetcode各类题型记录
文章目录双指针(三指针)11. 盛最多水的容器15. 三数之和17. 电话号码的字母组合回溯(用StringBuilder,最后需要撤销,即回溯)DFS(用String,最后不需要撤销,即DFS) 双指针(三指针) 11. 盛最多水的容器 参考 15. 三数之和 参考 17. 电话号码的字母组合 参考 模式识别 关键字:所有组合 首先想到穷举,需要搜索算法-----回溯 回溯(用StringBuilder,最后需要撤销,即回溯) class Solution { ArrayList<原创 2021-04-27 23:02:39 · 2045 阅读 · 2 评论 -
LeetCode刷题记录
DFS/BFS 365. 水壶问题 参考 关键是下面6个状态的列出 可以看出,可用搜索算法,DFS或BFS; 在「树」上的「深度优先遍历」就是「回溯算法」,在「图」上的「深度优先遍历」是「flood fill」 算法,深搜比较节约空间。这道题由于就是要找到一个符合题意的状态,我们用广搜就好了。这是因为广搜有个性质,一层一层像水波纹一样扩散,路径最短。 另外,在每一步搜索时,我们会依次尝试所有的操作,递归地搜索下去。这会导致超时,因此需要剪枝; 因此我们还需要使用一个哈希集合(HashSet)存储所有已原创 2021-08-04 22:59:16 · 320 阅读 · 0 评论 -
LeetCode6 Z 字形变换------中等
题目 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。 请你实现这个将字符串进行指定行数变换的函数: string convert(string s, int numRows); 示例 1: 输入: s原创 2020-10-29 20:29:19 · 122 阅读 · 0 评论 -
LeetCode5 最长回文子串------中等
题目: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb"原创 2020-09-23 22:03:47 · 251 阅读 · 0 评论 -
LeetCode9 回文数------简单
题目 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3: 输入: 10 输出: false 解释: 从右向左读, 为 01 。因此它不是一个回文数。 进阶: 你能不将整数转为字符串来解决这个问题吗? 方法一:将整数转换成字符串 1、 class Solution原创 2020-09-12 21:17:21 · 212 阅读 · 0 评论 -
LeetCode7 整数翻转------简单
题目 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: 假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。 关键点 ----------INT_MAX、INT_MIN C/C++中常量INT_MAX和INT_MIN分别表示最大、最小整数,原创 2020-09-10 14:45:16 · 142 阅读 · 0 评论 -
LeetCode3 无重复字符的最长子串------中等
题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3: 输入: "pwwkew" 输出: 3 解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子原创 2020-09-09 21:57:04 · 129 阅读 · 0 评论 -
LeetCode2 两数相加 -----中等
题目: 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例: 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8 原因:342 + 465 = 807 关键点 1、链表 链表这种数据结构的特点和使用 2、new的原创 2020-09-07 22:01:03 · 126 阅读 · 0 评论 -
LeetCode1 两数之和------简单
题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 思路 最容易想到的就是暴力枚举,我们可以利用两层 for 循环来遍历每个元素,并查找满足条件的目标元素。不过这样时间复杂度为 O(原创 2020-09-03 19:07:55 · 119 阅读 · 0 评论