力扣题库刷题笔记14--最长公共前缀

news2024/9/29 9:27:48

1、题目如下:

2、个人Python代码实现

        首先讲一下思路,通俗的来讲,就是依次比较字符串里面所有的字符,如果相同就是公共前缀,如果不同,后面就不用比较了,所以主要就是以下几点:

        1、外循环的次数,就是用来被比较的字符串的长度。举例 strs = ["dog","racecar","car"],选择用dog来被比较,也就是依次去d、o、g与第二个字符串的r、a、c、第三个字符串的c、a、r进行比较,所以这里的外循环次数实际就是dog的长度--3。然后这里使用temp作为被比较的字符串

        2、使用临时变量count用于计数,当count值和len(strs)一样的时候,就代表当前元素是所有字符串都存在的,也就是公共前缀。举例strs = ["flow","flower","flowe"],temp = “flow”,第一次循环的时候,由于str[0][0]、str[0][1]、str[0][2]都是f,所以count=3,由于len(strs)=3,所以f是公共前缀

        3、第一点中,可能会出现后续字符串长度比被比较的字符串短,导致下标越界,所以要用try进行异常捕获。

        4、注意strs为空的情况

 个人调试的代码如下:

strss = [
["flower","flow","flo"],
["flower"],
["flow","flower","flowe"],
[],
["dog","racecar","car"],
["car","cir"]
]
for strs in strss:
res = ""
if len(strs) > 0:
total = len(strs[0])
i = 0
while i < total:
temp = strs[0][i]
count = 0
for j in range(len(strs)):
try:
if strs[j][i] == temp:
count += 1
else:
break
except:
break
i += 1
if count == len(strs):
res += temp
else:
break
print(res)

3、题解Python代码

        膜拜就完事了

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/687821.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[Leetcode] 0026. 删除有序数组中的重复项

26. 删除有序数组中的重复项 点击上方&#xff0c;跳转至Leetcode 题目描述 给你一个 升序排列 的数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使每个元素 只出现一次 &#xff0c;返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。 由于在某些语…

好用到爆的数据库软件,还能兼容Excel,可以抛弃“VF”和Access

现在大部人已经不再用VF “VF”这个缩写&#xff0c;也只是停留在那个时代里&#xff0c;很多人已经不知道原来的样子&#xff0c;但有的人却还感慨万千。 懂得人自然都懂&#xff01; 微软的两款数据库软件&#xff1a;一个是office的Access&#xff0c;另一个就是“VF” VF…

自定义数据类型:结构体,枚举,联合

之前我们已经了解过结构体&#xff0c;这篇文章再来深入学习的一下&#xff0c;然后再学习其他自定义数据类型&#xff0c;枚举和联合 目录 1.结构体 1.1 结构体类型的声明 1.2 结构体的自引用 1.3 结构体变量的定义和初始化 1.4 结构体内存对齐 1.5 结构体传参 1.6 结…

【Shermo学习】使用shermo批量读入ORCA频率计算结果文件,并批量输出热力学校正数据

使用shermo批量读入ORCA频率计算结果文件&#xff0c;并批量输出热力学校正数据 安装与运行简单任务示例批量输出热力学校正数据 Shermo是北京科音自然科学研究中心卢天老师开发的一个程序&#xff0c;可以用来处理量子化学计算过程中的热力学数据。本文基于Shermo程序&#xf…

数据库设计篇-范式与反范式

概述 一般地&#xff0c;在进行数据库设计时&#xff0c;应遵循三大原则&#xff0c;也就是我们通常说的三大范式&#xff0c;即第一范式要求确保表中每列的原子性&#xff0c;也就是不可拆分&#xff1b;第二范式要求确保表中每列与主键相关&#xff0c;而不能只与主键的某部…

抖音林客生活服务商平台

抖音林客生活服务服务商平台是为了方便服务商管理自己的服务和订单而设计的平台。以下是其主要功能&#xff1a; 服务管理&#xff1a;服务商可以在平台上添加自己提供的服务&#xff0c;并设置服务的价格、规格等信息&#xff1b; 订单管理&#xff1a;服务商可以查看…

【Git总结】

第三章Git常用命令 Git注意首次 安装必须设置一下用户签名&#xff0c;否则无法提交代码。 vim 文件名&#xff08;hellow.txt&#xff09;//进入编辑模式 cat 文件名&#xff08;hellow.txt&#xff09;//查看文件内容 i进入编辑模式&#xff0c;(Esc):wq保存退出 &#…

掌握imgproc组件:opencv-图像处理

图像处理 1.线性滤波&#xff1a;方框滤波、均值滤波、高斯滤波1.1 平滑处理1.2 图像滤波与滤波器1.3 线性滤波器的简介1.4 滤波和模糊1.5 邻域算子与线性邻域滤波1.6 方框滤波1.7 均值滤波1.8 高斯滤波1.9 线性滤波综合案例 2.非线性滤波&#xff1a;中值滤波、双边滤波2.1 中…

python自定义序列类深入学习

一&#xff1a;自定义序列类 1、序列类型的分类 容器序列&#xff1a; list 、 tuple、deque 扁平序列&#xff1a; str 、bytes、bytearray、arry.array 可变序列&#xff1a; list 、deque、bytearray、array 不可变&#xff1a; str、tuple、bytes 容器序列表示可以放置任意…

计算机中CPU、内存、缓存的关系

CPU&#xff08;Central Processing Unit&#xff0c;中央处理器&#xff09; 内存&#xff08;Random Access Memory&#xff0c;随机存取存储器&#xff09; 缓存&#xff08;Cache&#xff09; CPU、内存和缓存之间有着密切的关系&#xff0c;它们共同构成了计算机系统的核…

软考高级系统架构设计师(八) 基于中间件的开发实际项目

目录 中间件的用途 中间件技术 中间件的特点 中间件的十大优越性 企业应用集成 轻量级架构 Struts框架 spring Hibernate 实际项目举例 产品逻辑大图 gRPC的接口规范 关键中间件交互 整体架构设计 大数据素材底层处理 业务交互大图 底层数据素材加工大图 中间…

这些年你走了多少弯路?接口性能测试你真的懂了?进阶测试...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 性能测试关注 响…

java + opencv对比图片不同

1&#xff0c;去官网下载opencv&#xff0c;下载的时候需要注册一个 Oracle 账户&#xff0c;分分钟就能注册。然后安装。我下的是4.7的。 2&#xff0c;找到jar包放进项目里 3&#xff0c;项目结构&#xff0c;比较简单 4&#xff0c;把下载的文件放进C盘 5&#xff0c;主类代…

未来独角兽!安全狗入选2023年福建省数字经济核心产业领域创新企业名单

近日&#xff0c;福建省数字福建建设领导小组办公室公布了入选2023年全省数字经济核心产业领域创新企业名单。 作为国内云原生安全领导厂商&#xff0c;安全狗凭借综合安全能力入选名单&#xff0c;荣膺“未来独角兽”称号。 厦门服云信息科技有限公司&#xff08;品牌名&#…

7DGroup性能实施项目日记4

经过了一个十一假期&#xff0c;我们的日记虽然没有更新&#xff0c;但我们的项目并没有停止。 虽然这个项目是一个依托性能培训的项目&#xff0c;但对我来说&#xff0c;这和真实的项目并无二致。我们花了几万&#xff08;根据一期的培训&#xff0c;估计在3万-4万左右&…

高速电路设计系列分享-基本概念

目录 概要 整体架构流程 技术名词解释 1.带宽的理解 2.了解转换器的精度 技术细节 小结 概要 提示&#xff1a;这里可以添加技术概要 本文主要熟悉一些基本概念。随笔&#xff0c;加一些网上用语&#xff0c;只做学习之用&#xff0c;不用深入分析。 整体架构流程 提…

最佳的SCADA软件推荐

前言 发现优化工业运营效率并最大化投资回报率的最佳“监控和数据采集 &#xff08;SCADA&#xff09;、工业物联网 &#xff08;IIoT&#xff09;、人工智能 &#xff08;AI&#xff09; 等”数字化转型技术&#xff0c;使商业组织能够提高运营效率并促进公用事业管理。当配备…

浏览器插件开发(一)入门之自制屏蔽某度广告的插件

一&#xff1a;浏览器扩展介绍&#xff1a; 浏览器扩展是一个小软件定义模块的网页浏览器&#xff0c;通常称为浏览器插件&#xff0c;大部分浏览器允许安装拓展&#xff0c;其作用有用户界面修改&#xff0c;广告拦截和Cookie管理等 包含基本平台信息的应用程序清单JSON文件 …

第十章 总结【编译原理】

第十章 总结【编译原理】 前言推荐第十章 总结10.1 概述10.2 局部优化10.2.1基本块及流图10.2.2基本块的DAG表示及其应用 10.3 循环优化*10.4数据流分析 最后 前言 2023-6-26 18:54:31 以下内容源自《【编译原理】》 仅供学习交流使用 推荐 第九章 总结及作业&#xff08;4…

态路小课堂丨三种实现光模块更高传输速率的技术你知道吗?

TARLUZ态路 随着云计算、大数据的快速兴起&#xff0c;数据中心以及电信运营商对光模块的传输速率要求越来越高。从1998年发展至今&#xff0c;光模块一直朝着更高的速率、更小的封装不断升级。光模块一般采用增加波长数、增加信号传输通道数量和提高单通道速率技术方案实现光模…