首页 > 软件开发 > PYTHON >

如何在PYTHON里解决最长公共前缀问题

来源:互联网 2023-03-16 19:12:19 320

在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

工具/原料

  • PYTHON

方法/步骤

  • 1

    打开JUPYTER NOTEBOOK,新建一个空白的PY文档。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 1该信息非法爬取自百度经验
  • 2

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    for str in strs:QEY办公区 - 实用经验教程分享!

    print(len(str), end=" ")QEY办公区 - 实用经验教程分享!

    遍历一下长度,发现长度不均。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 3

    d = {}QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for str in strs:QEY办公区 - 实用经验教程分享!

    d[str] = len(str)QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    dQEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    可能会有些同学想用字典来存储。但是这样不好比较。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 4

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    d = {}QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for str in strs:QEY办公区 - 实用经验教程分享!

    d[len(str)] = strQEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    dQEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    这样反过来存储更不好比较,要凤追注意了。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 5

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    strs_num = []QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for str in strs:QEY办公区 - 实用经验教程分享!

    strs_num.append(len(str))QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    print(min(strs_num))QEY办公区 - 实用经验教程分享!

    print(strs_num.index(min(strs_num)))QEY办公区 - 实用经验教程分享!

    我们可以找到最短的那个数据,然后和其他的相比较。但是这样不好比较。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 6

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    result = ""QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for i in range(len(strs[0])):QEY办公区 - 实用经验教程分享!

    for j in range(1, len(strs)):QEY办公区 - 实用经验教程分享!

    if strs[0][i] == strs[j][i]:QEY办公区 - 实用经验教程分享!

    result = result strs[0][i]QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    我们可以用两个遍历来对比,但是这里少了一个条件。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 7

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    result = ""QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for i in range(len(strs[0])):QEY办公区 - 实用经验教程分享!

    for j in range(1, len(strs)):QEY办公区 - 实用经验教程分享!

    if i > len(strs[j]) or strs[0][i] != strs[j][i]:QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    注意就是i的长度问题,这里大于还是不够的,因为长度是从1开始计算的。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 8

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    result = ""QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for i in range(len(strs[0])):QEY办公区 - 实用经验教程分享!

    for j in range(1, len(strs)):QEY办公区 - 实用经验教程分享!

    if i >= len(strs[j]) or strs[0][i] != strs[j][i]:QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    result = strs[0][i]QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    这样设置就比较合理了。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 9

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    result = ""QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    if strs == "":QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for i in range(len(strs[0])):QEY办公区 - 实用经验教程分享!

    for j in range(1, len(strs)):QEY办公区 - 实用经验教程分享!

    if i >= len(strs[j]) or strs[0][i] != strs[j][i]:QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    result = strs[0][i]QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    如果怕用户什么都没输入,要这样定义。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 10

    strs = ["flower","flow","flight"]QEY办公区 - 实用经验教程分享!

    result = ""QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    if len(strs) == 0:QEY办公区 - 实用经验教程分享!

    净蚂 print(result)QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    for i in range(len(strs[0])):QEY办公区 - 实用经验教程分享!

    for j in range(1, len(strs)):QEY办公区 - 实用经验教程分享!

    返戴祝 if i >= len(strs[j]) or strs[0][i] != strs[j][i]:QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    result = strs[0][i]QEY办公区 - 实用经验教程分享!

    QEY办公区 - 实用经验教程分享!

    print(result)QEY办公区 - 实用经验教程分享!

    这样写就比较清晰了。QEY办公区 - 实用经验教程分享!

    如何在PYTHON里解决最长公共前缀问题QEY办公区 - 实用经验教程分享!

  • 注意事项

    • 第一个遍历要设置列表的第一个数据

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!QEY办公区 - 实用经验教程分享!


    标签: python

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码