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操作SQLite简明教程
Jul 10 Python
浅析Python中的序列化存储的方法
Apr 28 Python
PyQt5每天必学之弹出消息框
Apr 19 Python
Redis使用watch完成秒杀抢购功能的代码
May 07 Python
基于DataFrame筛选数据与loc的用法详解
May 18 Python
python遍历文件目录、批量处理同类文件
Aug 31 Python
利用python Selenium实现自动登陆京东签到领金币功能
Oct 31 Python
解决python 读取 log日志的编码问题
Dec 24 Python
python实现人机五子棋
Mar 25 Python
Python基础教程(一)——Windows搭建开发Python开发环境
Jul 20 Python
如何用python 操作zookeeper
Dec 28 Python
linux系统下pip升级报错的解决方法
Jan 31 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下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
PHP通过iconv将字符串从GBK转换为UTF8字符集
2011/07/18 PHP
PHP简单实现断点续传下载的方法
2015/09/25 PHP
PHP实现基于3DES算法加密解密字符串示例
2018/08/24 PHP
JS实现的五级联动菜单效果完整实例
2017/02/23 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
2017/03/24 jQuery
微信小程序 navbar实例详解
2017/05/11 Javascript
通过命令行创建vue项目的方法
2017/07/20 Javascript
详解使用Vue Router导航钩子与Vuex来实现后退状态保存
2017/09/11 Javascript
对node.js中render和send的用法详解
2018/05/14 Javascript
解决vue.js 数据渲染成功仍报错的问题
2018/08/25 Javascript
JQuery搜索框自动补全(模糊匹配)功能实现示例
2019/01/08 jQuery
vue.js的vue-cli脚手架中使用百度地图API的实例
2019/01/21 Javascript
vue 表单之通过v-model绑定单选按钮radio
2019/05/13 Javascript
原生小程序封装跑马灯效果
2020/10/21 Javascript
详解Vue.js3.0 组件是如何渲染为DOM的
2020/11/10 Javascript
Python定时执行之Timer用法示例
2015/05/27 Python
Python 中urls.py:URL dispatcher(路由配置文件)详解
2017/03/24 Python
Python编程之序列操作实例详解
2017/07/22 Python
python使用epoll实现服务端的方法
2018/10/16 Python
Python中xml和json格式相互转换操作示例
2018/12/05 Python
python单线程下实现多个socket并发过程详解
2019/07/27 Python
Python中的相关分析correlation analysis的实现
2019/08/29 Python
python定义类self用法实例解析
2020/01/22 Python
Html5定位终极解决方案
2020/02/05 HTML / CSS
英国女士和男士时尚服装网上购物:Top Labels Online
2018/03/25 全球购物
夏洛特和乔治婴儿和儿童时装精品店:Charlotte and George
2018/06/06 全球购物
意大利珠宝店:Luxury Zone
2019/01/05 全球购物
亲子运动会的活动方案
2014/08/17 职场文书
珍惜资源的建议书
2014/08/26 职场文书
法定代表人身份证明书(含说明)
2014/10/02 职场文书
关于安全的广播稿
2014/10/23 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
践行三严三实心得体会(2016推荐篇)
2016/01/06 职场文书
MySQL 全文检索的使用示例
2021/06/07 MySQL
JS前端可视化canvas动画原理及其推导实现
2022/08/05 Javascript