Python实现查找字符串数组最长公共前缀示例


Posted in Python onMarch 27, 2019

本文实例讲述了Python实现查找字符串数组最长公共前缀。分享给大家供大家参考,具体如下:

编写一个函数来查找字符串数组中的最长公共前缀。

class Solution:
  def longestCommonPrefix(self, strs):
    """
    :type strs: List[str]
    :rtype: str
    """
    olds = ''
    rs=''
    if not strs:
      return ''
    if len(strs)==1:
      return strs[0]
    over = False
    print("strs_len:", len(strs))
    i=0 # 单个字符的索引
    while True:
      j=0 # strs中字符串的索引
      while j < len(strs)-1:
        if not strs[j] or not strs[j+1]:# 若是空串
          break
        #print("s1:",len(strs[j]), " s2:", len(strs[j+1]))
        if i >= len(strs[j]): # 如果一个子串比较完了,则结束循环
          over = True
          break
        elif i >= len(strs[j+1]):
          j+=1
          over = True
          break
        else:
          over = False
        #print("j:",j,"i: ",i)
        if strs[j][i] != strs[j+1][i]:
          break
        j+=1
      #print("j2:",j)
      if not over and j!=(len(strs)-1): # 如果没有比较到最后,说明前面出现了不相等的子串
        break
      #print("j:",j,"i: ",i)
      if over: # 如果一个子串已经比较结束,结束循环
        rs=strs[j]
        break
      i+=1
      rs=strs[0][:i]
      print("rs:",rs)
    return rs

我实现的方法,相当笨,后来通过测试后,我发现原来系统中有现成的接口是现实这个功能,如下:

os.path.commonprefix(list)

返回list中,所有元素共有的最长的前缀

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python 爬虫学习笔记之正则表达式
Sep 21 Python
用python写一个windows下的定时关机脚本(推荐)
Mar 21 Python
Python生成密码库功能示例
May 23 Python
简述:我为什么选择Python而不是Matlab和R语言
Nov 14 Python
浅谈flask截获所有访问及before/after_request修饰器
Jan 18 Python
python如何读写csv数据
Mar 21 Python
对python Tkinter Text的用法详解
Oct 11 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
DJANGO-URL反向解析REVERSE实例讲解
Oct 25 Python
tensorflow如何继续训练之前保存的模型实例
Jan 21 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
Jun 10 Python
python破解同事的压缩包密码
Oct 14 Python
详解python中@的用法
Mar 27 #Python
详解python列表生成式和列表生成式器区别
Mar 27 #Python
Python3实现的回文数判断及罗马数字转整数算法示例
Mar 27 #Python
详解Django项目中模板标签及模板的继承与引用(网站中快速布置广告)
Mar 27 #Python
python模块之subprocess模块级方法的使用
Mar 26 #Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
Mar 26 #Python
Python实现的矩阵转置与矩阵相乘运算示例
Mar 26 #Python
You might like
2017年最新PHP经典面试题目汇总(上篇)
2017/03/17 PHP
thinkphp分页集成实例
2017/07/24 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
2020/02/27 PHP
Laravel 5+ .env环境配置文件详解
2020/04/06 PHP
JS遮罩层效果 兼容ie firefox jQuery遮罩层
2010/07/26 Javascript
js substr支持中文截取函数代码(中文是双字节)
2013/04/17 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
2014/04/02 Javascript
JavaScript正则表达式中的ignoreCase属性使用详解
2015/06/16 Javascript
深入理解jQuery事件绑定
2016/06/02 Javascript
JS前向后瞻正则表达式定义与用法示例
2016/12/27 Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
2017/01/20 Javascript
nodejs读写json文件的简单方法(必看)
2017/03/09 NodeJs
作为老司机使用 React 总结的 11 个经验教训
2017/04/08 Javascript
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
ES6模块化的import和export用法方法总结
2017/08/08 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
javascript 原型与原型链的理解及实例分析
2019/11/23 Javascript
[00:32]DOTA2上海特级锦标赛 COL战队宣传片
2016/03/04 DOTA
浅谈Python中的数据类型
2015/05/05 Python
python字符串的常用操作方法小结
2016/05/21 Python
Python探索之爬取电商售卖信息代码示例
2017/10/27 Python
Django ORM 聚合查询和分组查询实现详解
2019/08/09 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
Html5游戏开发之乒乓Ping Pong游戏示例(一)
2013/01/21 HTML / CSS
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
意大利在线药房:Saninforma
2021/02/11 全球购物
北大自主招生自荐信
2013/10/19 职场文书
降消项目实施方案
2014/03/30 职场文书
销售内勤岗位职责
2014/04/15 职场文书
国际商务专业求职信
2014/07/15 职场文书
我的梦想演讲稿1000字
2014/08/21 职场文书
端午节活动总结
2014/08/26 职场文书
防汛工作情况汇报
2014/10/28 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书
python脚本框架webpy模板控制结构
2021/11/20 Python