这个“最短回文” python递归解决方案的时间复杂度

时间:2018-11-09 04:25:28

标签: time-complexity

这是问题和代码:

给出一个字符串s,您可以通过在字符串前面添加字符来将其转换为回文。通过执行此转换,找到并返回您可以找到的最短回文。

示例1:

输入:“ aacecaaa” 输出:“ aaacecaaa” 示例2:

输入:“ abcd” 输出:“ dcbabcd”

此问题的递归解决方案:

def solution(s):
    i = 0
    for j in range(len(s) - 1, -1, -1):
        if s[i] == s[j]:
            i += 1
    if i == len(s):
        return s
    return s[i:][::-1] + self.shortestPalindrome(s[:i]) + s[i:]

我试图平均计算出该解决方案的时间复杂度。非常感谢您的帮助!

0 个答案:

没有答案