LeetCode题解(1163):按字典序排在最后的子串(Python)
发布日期:2021-06-29 19:58:25 浏览次数:3 分类:技术文章

本文共 795 字,大约阅读时间需要 2 分钟。

题目:(困难)

标签:字符串

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( N 2 ) O(N^2) O(N2) O ( 1 ) O(1) O(1) 3920ms (18.31%)
Ans 2 (Python) O ( N 2 ) O(N^2) O(N2) O ( 1 ) O(1) O(1) 476ms (56.34%)
Ans 3 (Python)

解法一(暴力解法):

class Solution:    def lastSubstring(self, s: str) -> str:        ans = ""        for i in range(len(s)):            ans = max(ans, s[i:])        return ans

解法二(解法一优化):

测试用例中有一个特别多连续的a的用例

class Solution:    def lastSubstring(self, s: str) -> str:        ans = s        for i in range(1, len(s)):            if s[i] != s[i-1]:  # 如果子串的开头和前一个字符相等的话,一定不会是解                for j in range(len(s) - i):                    if ans[j] < s[i + j]:                        ans = s[i:]                        break                    elif ans[j] > s[i + j]:                        break        return ans

转载地址:https://dataartist.blog.csdn.net/article/details/108096374 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LeetCode题解(1169):依据指定条件查询无效交易(Python)
下一篇:LeetCode题解(1156):移动一个字符形成的单字符重复子串的最大长度(Python)

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月27日 09时06分20秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章