首页 > 解决方案 > Leetcode: 14. 最长公共前缀

问题描述

我更喜欢先在本地 PC 上解决 Leetcode 问题。我在 Spyder IDE 中安装了 python 3.8。我试图解决最长的公共前缀问题并且能够成功地解决它。

这是我使用的python代码:

string=["flower","flow","flight"]

search=string[0]
prefix=""
for i in range(1,len(string)): # loop over the list
    print('i= '+str(i))
    # Have to find the length of smaller string for next loop length
    if len(search)>len(string[i]):
        length=len(string[i])
    else:
        length=len(search)
     
    print('Length='+str(length))
    # Searching letter that match contents of search
    for j in range(0,length-1):
           
        if string[i][j]==search[j]:
            prefix+=search[j]
        else:
            break
    search=prefix  # replacing prefix to search string for next word i.e. (i++)
    prefix=""      # empty prefix variable for next iteration
    print('search='+str(search))

当我使用 python 3 在 Leetcode 中执行相同的代码时,问题就出现了。碰巧当我执行代码时,通过了 2 / 123 个测试用例。但是,最后执行的输入是 []。在这里,我的代码失败了。我不知道在这种情况下要返回什么,因为问题没有解决这种情况。这里,是错误的一个片段。

Leetcode 报错截图

标签: pythonpython-3.8

解决方案


推荐阅读