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实现简单生成验证码功能【基于random模块】
Feb 10 Python
教你用Python创建微信聊天机器人
Mar 31 Python
Python图片转换成矩阵,矩阵数据转换成图片的实例
Jul 02 Python
面向初学者的Python编辑器Mu
Oct 08 Python
python Gunicorn服务器使用方法详解
Jul 22 Python
python使用sklearn实现决策树的方法示例
Sep 12 Python
PyTorch实现AlexNet示例
Jan 14 Python
通过Turtle库在Python中绘制一个鼠年福鼠
Feb 03 Python
python代码实现将列表中重复元素之间的内容全部滤除
May 22 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
Jun 24 Python
python tqdm实现进度条的示例代码
Nov 10 Python
python基础之文件操作
Oct 24 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
php实现12306余票查询、价格查询示例
2014/04/17 PHP
PHP制作万年历
2015/01/07 PHP
PHP多进程编程实例详解
2017/07/19 PHP
当鼠标移动时出现特效的JQuery代码
2013/11/08 Javascript
js获取时间(本周、本季度、本月..)
2013/11/22 Javascript
JavaScript在IE和FF下的兼容性问题
2014/05/19 Javascript
node.js中的fs.rmdirSync方法使用说明
2014/12/16 Javascript
基于javascript实现样式清新图片轮播特效
2016/03/30 Javascript
jQuery纵向导航菜单效果实现方法
2016/12/19 Javascript
简单的渐变轮播插件
2017/01/12 Javascript
JavaScript结合HTML DOM实现联动菜单
2017/04/05 Javascript
JavaScript生成简单等差数列
2017/11/28 Javascript
对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍
2018/08/30 Javascript
浅谈vue同一页面中拥有两个表单时,的验证问题
2018/09/18 Javascript
JS前端知识点总结之内置对象,日期对象和定时器相关操作
2019/07/05 Javascript
jQuery 查找元素操作实例小结
2019/10/02 jQuery
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
Python实现list反转实例汇总
2014/11/11 Python
用python处理图片实现图像中的像素访问
2018/05/04 Python
Python实现识别图片内容的方法分析
2018/07/11 Python
对python 多线程中的守护线程与join的用法详解
2019/02/18 Python
eclipse创建python项目步骤详解
2019/05/10 Python
Python线上环境使用日志的及配置文件
2019/07/28 Python
Python如何使用turtle库绘制图形
2020/02/26 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
翻转数列python实现,求前n项和,并能输出整个数列的案例
2020/05/03 Python
CSS3中background-clip和background-origin的区别示例介绍
2014/03/10 HTML / CSS
销售竞赛活动方案
2014/08/23 职场文书
异地恋情人节寄语
2015/02/28 职场文书
2015年行政助理工作总结
2015/04/30 职场文书
毕业设计致谢词
2015/05/14 职场文书
傲慢与偏见电影观后感
2015/06/10 职场文书
大学生村官入党自传
2015/06/26 职场文书
教师培训简讯
2015/07/20 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
2019入党申请书范文3篇
2019/08/21 职场文书