LeetCode刷题总结
文章平均质量分 70
Glong97
这个作者很懒,什么都没留下…
展开
-
LeetCode:1312. 让字符串成为回文串的最少插入次数(Java)
动态规划求解:首先分析原问题和子问题的关系:一、情况一:第一个字符跟最后一个字符不相等。以为例,假设我们知道子问题、和成为回文串的最少插入次数为、和,现在开始分析如何从子问题得到原问题的答案:二、情况二:第一个字符跟最后一个字符串相等。以为例,假设我们知道子问题最少插入次数为,那原问题需要插入的最少字符就等于。定义动态规划的dp[n][n],dp[i][j]代表字符串下标到的问题的解,代表字符串的长度。初始化dp[n][n]的边界情况,若 == ,则需要插入的字符为,即一个字符本身就是回文串,不需要插入了原创 2024-03-26 17:20:05 · 1463 阅读 · 0 评论 -
LeetCode热题100:旋转图像
这题是没有看官方解题按自己的思路写出来的,看了其他题解没看到有跟我一样的解法,因此在这里记录一下。我的题解思路实现起来确实比较麻烦,写的时候很多边界条件的判断差点给我绕晕了,调试了很久才写出来,但思路是最简单粗暴的,写完后感觉非常锻炼自己写代码的思维能力!原创 2024-03-15 16:07:29 · 376 阅读 · 1 评论 -
LeetCode热题100:无重复字符的最长子串
要找出一条不含重复字符的子串,首先要想到用Set集合来进行求解;首先想到的是暴力遍历s的所有字符,以每个字符作为开始,依次往下寻找最长不包含重复字符的子串。以`abcabcbb`为例,首先是以a字符串开始遍历,找到一个不包含重复字符的子串(abc)abcbb,然后再从b开始,找出下一个不包含重复字符的子串a(bca)bcbb,然后一下ab(cab)cbb,以此类推找到所有的不包含重复字符子串。上面可以求解出所有的不包含重复字符的子串,然后找出最大的子串长度就可以得出答案了,但是我们发现还有优化的地方。原创 2024-02-29 17:39:51 · 444 阅读 · 1 评论 -
LeetCode热题100:字母异位词分组(Java)
这题最主要的是要想到用HashMap来分组,然后关键就是找到合适的Key来区分不同的异位词组,不然两两比较是否是异位词后再进行分组实现起来复杂,时间复杂度又高。。。。原创 2024-02-22 17:58:56 · 462 阅读 · 0 评论