
力扣
文章平均质量分 54
记录刷题思路
TutuRabit1
这个作者很懒,什么都没留下…
展开
-
5.最长回文子串
思路类似滑动窗口,设置两个指针分别指向子串的首部和尾部,判断所指元素是否相等,不相等则直接返回false,相等则两指针各逼近一位,再进行比较,直到两指针相遇或相邻,此时返回true。最后,将最长的回文子串返回即可。该解法时间复杂度为O(n^3),在最后一个用例测试超时。原创 2024-05-11 23:38:21 · 599 阅读 · 0 评论 -
4.寻找两个正序数组的中位数
给两个数组首部分别设置一个指针。比较指针所指元素大小,将小的放入结果数组中,并将该指针后移,直到有一个数组遍历完。然后将未遍历完的数组剩余元素直接放入结果数组中,再求得结果数组中位数即可。值得注意的是,结果数组长度要设置为两数组长度和+1,计算中位数时不要忘记这一点,且要转为double型。刚做了第三题,用到了滑动窗口,所以这题一下就想到了双指针。原创 2024-05-10 11:39:28 · 152 阅读 · 0 评论 -
3.无重复字符的最长子串
当不存在相同元素时,将right指针对应的元素存入set中,同时curlength当前长度加一,right指针后移一位,给maxlength赋值max(curlength,maxlength)。当遇到相同元素时,从set中移除left指针所指元素,然后left指针后移,且curlength减一,循环操作,直到没有相同元素,此时就可以将right指针所指元素放入set,同时不要忘记后移right指针,并且curlength加一。首先想到暴力法,找出所有子字符串,用哈希表逐个查看是否有相同元素。原创 2024-05-09 17:39:02 · 381 阅读 · 0 评论