Python:leetcode第五题,Longest Palindromic Substring,中心枚举法问题。

1.在leetcode上面刷题,第五题,用了中心枚举法。
2.参考了这篇博客:https://blog.csdn.net/asd1369...
3.用的第二个方法,其他代码都可以理解,我直接贴问题代码:

        x= 0
        if (i + 1) < l:
            while (i - x) >= 0 and (i + 1 + x) < l:
                if s[i + 1 + x] == s[i - x]:
                    x += 1
                else:
                    break

4.因为x=0,所以我觉得对x进行‘+’,‘-’进行操作是多余的,于是就删除了(删除的是while和if语句里面的)。
5.删除之后,原来能够通过的代码就超时了。
6.希望有大佬能告诉我为什么会出现这样的结果。

阅读 3k
2 个回答

就是不能删除的。因为在符合情况的时候,x是会自增的。

如果你把x += 1删除了,x永远都不会变,while的条件有可能永远都得不到满足,所以就无限循环了,所以就超时了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题