![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣题解与思考篇
lackoff
长大了以后才明白,通过学习可以看到更多的风景
展开
-
力扣刷题记录 5.最长回文子串
内容: 1、动态规划 核心思想:一个长回文串,去除两边,一定还是个回文串。(如acbca,去掉两边的a,cbc也依然是回文串)。根据该条规则,能得出判断一个字符串时回文串的两个条件,:①两边字符相等②去掉两边字符后的字符串依然是个回文串或者空字符串。 由此可以从底向上推,先将a、c、b、c、a五个字符分别标记成回文子串,然后从第一个a开始取ac、cb、bc、ca,根据上面两个规则,发现没有回文串,继续循环。再扩展截取字符长度取ac...原创 2021-11-03 17:45:32 · 85 阅读 · 0 评论 -
力扣刷题记录 4.寻找两个正序数组的中位数
内容: 1、利用java自带函数破解 核心思想:两个数组转list合并,由小到大重排序,数组长度奇数直接取中位数的值,为偶数则取中位数和中位数前一位两数合的一半 时间复杂度O(m+n),空间复杂度O(m+n),m和n分别为两个数组长度class Solution { public double findMedianSortedArrays(int[] nums1, int[] nums2) { double result ...原创 2021-11-02 11:38:51 · 124 阅读 · 0 评论 -
力扣刷题记录 3.无重复字符的最长子串
内容: 该篇记录三种解法 1、暴力破解法 同样,双层for循环,外层控制次数,内层控制从左向右滑动指针判断是否重复,不重复则添加到集合并取数比大小,返回大值。时间复杂度O(N^2),空间复杂度O(N)。(该方法逻辑简单,但实际上并不可取,官方解法是滑动窗口,可以看做是暴力破解法的变种,先理解暴力破解法,再理解滑动窗口就容易许多)。class Solution { public int lengthOfLongestSubstring...原创 2021-10-12 18:09:39 · 102 阅读 · 0 评论 -
力扣刷题记录 2.两数相加
内容: 记录一种解法,看了力扣官方解答和一些精品解答的思路都是差不多的时间复杂度:O(max(m,n)),其中 m 和 n 分别为两个链表的长度。我们要遍历两个链表的全部位置,而处理每个位置只需要 O(1) 的时间。 空间复杂度:O(max(m,n)),这里因为我用的是递归,每次递归调用方法都需要创建新的空间,所以m和n的最大长度是几就要递归几次。注:官方解答中用的不是递归,空间消耗更少,一次循环即可,我这里就是记录一下自己的解法。(日后复习时更方...原创 2021-10-11 15:49:07 · 143 阅读 · 0 评论 -
力扣刷题记录 1.两数之和
力扣1原创 2021-10-11 13:35:03 · 109 阅读 · 0 评论