leetcode 14-最长公共前缀 python

2023-11-05

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

如果不存在公共前缀,返回空字符串 ""

示例 1:

输入: ["flower","flow","flight"]
输出: "fl"

示例 2:

输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。

可以使用enumerate()函数进行对比。enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中

>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter']

>>> list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

>>> list(enumerate(seasons, start=1)) # 下标从 1 开始 [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

PS:这里可以设置下标,默认是从0开始

普通的 for 循环

>>>i = 0

>>> seq = ['one', 'two', 'three']

>>> for element in seq: 

             print i, seq[i] 

             i +=1

... 0 one 1 two 2 three

for 循环使用 enumerate

>>>seq = ['one', 'two', 'three']

>>> for i, element in enumerate(seq):

             print i, element

... 0 one 1 two 2 three

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        if len(strs) == 0:
            return ''
        s1 = min(strs)
        s2 = max(strs)
        for i,element in enumerate(s1):
            if element != s2[i]:
                return s1[:i]
        return s1

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

leetcode 14-最长公共前缀 python 的相关文章

  • ai怎么做盒子效果图_AI做局部放大效果图

    前言 局部放大效果图是我们实验中比较常见的 是为了将更小的部分进行放大观察 这种图使用Ps和Ai都可以做 不难 在AI里主要涉及到了剪切蒙版的设置 使用圆形线圈对图进行剪切 放大就可以了 那么我们今天来看一下 这种图怎么做 软件 Adobe
  • 对Kalman(卡尔曼)滤波器的理解

    分类 计算机视觉 转载过来的 觉得不错 原文 http blog csdn net lanbing510 article details 8828109 1 简介 Brief Introduction 在学习卡尔曼滤波器之前 首先看看为什么
  • linux内核互斥锁,linux内核锁机制 - 全文

    在现代操作系统里 同一时间可能有多个内核执行流在执行 因此内核其实象多进程多线程编程一样也需要一些同步机制来同步各执行单元对共享数据的访问 尤其是在多处理器系统上 更需要一些同步机制来同步不同处理器上的执行单元对共享的数据的访问 在主流的L
  • bootstrap与application对比

    用过 Spring Boot 的都知道在 Spring Boot 中有以下两种配置文件 bootstrap yml 或者 properties application yml 或者 properties 为什么会有这两种配置文件呢 大家都清
  • QPSK调制器

    早在本世纪初人们就了解通讯的重要性 从电子时代初期开始 随着技术的不断发展 本地通讯与全球通讯的之间壁垒被打破 从而导致我们世界变得越来越小 人们分享知识和信息也更加容易 贝尔和马可尼可谓通讯事业的鼻祖 他们所完成的开拓性工作不仅为现代信息

随机推荐

  • ViewPager中的fragment内容不显示,无报错问题解决

    背景 楼主在做一个fragment切换的时候 用viewpager来做切换的动画 将需要去切换的fragmentA fragmentB加入到fragmentAdapter中后 页面没有显示出来fragmentA或者fragmentB的内容
  • 使用机器学习做DGA域名识别

    DGA域名 域名生成算法 Domain Generation Algorithm DGA 是一项古老但一直活跃的技术 是中心结构僵尸网络赖以生存的关键武器 该技术给打击和关闭该类型僵尸网络造成了不小的麻烦 研究人员需要快速掌握域名生成算法和
  • CountDownLatch 用法和详解

    CountDownLatch 是多线程控制的一种工具 它被称为 门阀 计数器或者 闭锁 这个工具经常用来用来协调多个线程之间的同步 或者说起到线程之间的通信 而不是用作互斥的作用 下面我们就来一起认识一下 CountDownLatch 认识
  • 深度学习------不同方法实现Inception-10

    本博客通过tensorflow实现inception10模型 对于inception10模型有不同的写法 包括 sequence模型 类封装 自定义函数 而本博客主要通过自定义函数和类封装实现inception10 代码和模块图如下 inc
  • 基于echarts 做的男女比例

    data数据 maleToFemaleRatio FemaleNumber 28417 FemaleRadio 45 17 MaleNumber 34491 MaleRadio 54 83 完整代码 var myChart echarts
  • 面试题 04.02. 最小高度树

    面试题 04 02 最小高度树 给定一个有序整数数组 元素各不相同且按升序排列 编写一个算法 创建一棵高度最小的二叉搜索树 示例 给定有序数组 10 3 0 5 9 一个可能的答案是 0 3 9 10 null 5 它可以表示下面这个高度平
  • 在ch32v307单片机上移植LUA

    下载lua源代码 先到官网下载lua源代码 http www lua org 然后解压出源码 源码移植 这里基于官方例程中的串口例程进行移植 USART Printf例程 使用MounRiver Studio该工程 然后添加lua源码 需要
  • 说说对 Node 中的 Buffer 的理解?应用场景?

    一 是什么 在Node应用中 需要处理网络协议 操作数据库 处理图片 接收上传文件等 在网络流和文件的操作中 要处理大量二进制数据 而Buffer就是在内存中开辟一片区域 初次初始化为8KB 用来存放二进制数据 在上述操作中都会存在数据流动
  • Android Studio 安装 SDK 失败

    https blog csdn net zdw wym article details 74942772 utm source tuicool utm medium referral
  • 计算机端口详解

    计算机端口详解 一 摘要 端口是个网络应用中很重要的东西 相当于 门 了 二 什么是端口 在 Internet上 各主机间通过TCP TP协议发送和接收数据报 各个数据报根据其目的主机的ip地址来进行互联网络中的路由选择 可见 把数据报顺
  • 【C语言】如何只打印小数的有效数字位数且不补0

    我们时常会碰到使用printf打印小数但只想显示该小数有有效数字的小数位数 这时使用float或者double类型打印时往往会出现以下情况 但是如果我们不想打印39 5之后的小数 那么就需要将c语言中printf语句中的 f 表示十进制浮点
  • pipreqs——快捷生成一个Python项目的依赖模块requirements.txt

    依赖模块文件快捷生成requirements txt 解决代码复用过程中 低效环境配置的问题 使用步骤 1 安装pipreqs pip install i https pypi tuna tsinghua edu cn simple pip
  • Tomcat的优化

    Tomcat作为一款常用的web容器 对其进行优化是提升性能的重要手段 对其进行优化可以从以下方面入手 调整内存 调整线程池 Executor 调整连接器 Connector 调整运行模式 调整内存 如果内存设置过小 极有可能导致项目无法启
  • 头条移动端项目Day07 —— app端文章搜索

    作者主页 欢迎来到我的技术博客 个人介绍 大家好 本人热衷于Java后端开发 欢迎来交流学习哦 如果文章对您有帮助 记得关注 点赞 收藏 评论 您的支持将是我创作的动力 让我们一起加油进步吧 文章目录 app端文章搜索 1 本章内容介绍 1
  • 通过图数据库 Neo4J 建立疫情行动轨迹及接触关系图

    最近疫情反复 我被为拜托建一张 某某行动轨迹及接触关系图 这类行动轨迹或接触关系 可以抽象成网或者图 从这类图结构立刻就会联想到图数据库Neo4J 正好并没有在公司电脑上安装和使用过Neo4J 于是在这里简单记录下 整个过程还是非常简单的
  • 硅谷撑不住了?200多家美国科技公司裁员1.8万人

    点击上方 AI遇见机器学习 选择 星标 公众号 重磅干货 第一时间送达 疫情之下 硅谷巨头们快撑不住了 据Layoffs fyi称 自3月初以来 美国科技公司迎来多次大规模的裁员 自新冠病毒在欧美肆虐以来 Layoffs fyi一直在追踪初
  • windows下游戏服务器端框架Firefly安装说明及demo运行

    本来公司一个网游服务器端选定了pomelo框架 后来出了个Firefly 为做一个对比 决定研究一下Firefly 看了一下Firefly 感觉头大 python的 本人python小白 只好慢慢折腾 一天下来总算装上了Firefly框架
  • android:layout_weight的真实含义

    首先声明只有在Linearlayout中 该属性才有效 之所以android layout weight会引起争议 是因为在设置该属性的同时 设置android layout width为wrap content和match parent会
  • SimSwap代码精析对应论文Pipeline【Identity Extractor以及loss的计算,Encoder,ID Injection Module,Decoder】

    SimSwap代码精析对应论文Pipeline Identity Extractor以及loss id的计算 Encoder ID Injection Module Decoder 0 前言 1 先看Inference的Pipeline I
  • leetcode 14-最长公共前缀 python

    编写一个函数来查找字符串数组中的最长公共前缀 如果不存在公共前缀 返回空字符串 示例 1 输入 flower flow flight 输出 fl 示例 2 输入 dog racecar car 输出 解释 输入不存在公共前缀 可以使用enu