力扣 --- 最长公共前缀

题目描述:

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

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

示例 1:

复制代码
输入:strs = ["flower","flow","flight"]
输出:"fl"

示例 2:

复制代码
输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。

思路描述:

对于这道题,我们可以从前往后遍历,每次遍历都是用当前字符串和该字符串之前的所有字符串的最长公共前缀进行比较,然后更新当前的最长公共前缀,再找下一个位置,直到遍历完。

代码:

java 复制代码
class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs.length==1){
            return strs[0];
        }
        int len=strs.length;
        String result=strs[0];
        for(int i=1;i<len;i++){
            if(result==""){
                return "";
            }
            String newResult="";
            int count=0;
            while(count<result.length() && count<strs[i].length() && result.charAt(count)==strs[i].charAt(count)){
                count++;
            }
            result=result.substring(0,count);
        }
        return result;
    }
}

提交结果:

相关推荐
Abladol-aj1 小时前
并发和并行的基础知识
java·linux·windows
清水白石0081 小时前
从一个“支付状态不一致“的bug,看大型分布式系统的“隐藏杀机“
java·数据库·bug
qq_364371721 小时前
Vue 内置组件 keep-alive 中 LRU 缓存淘汰策略和实现
前端·vue.js·缓存
y先森2 小时前
CSS3中的弹性布局之侧轴的对齐方式
前端·css·css3
吾日三省吾码6 小时前
JVM 性能调优
java
y先森7 小时前
CSS3中的伸缩盒模型(弹性盒子、弹性布局)之伸缩容器、伸缩项目、主轴方向、主轴换行方式、复合属性flex-flow
前端·css·css3
前端Hardy7 小时前
纯HTML&CSS实现3D旋转地球
前端·javascript·css·3d·html
susu10830189117 小时前
vue3中父div设置display flex,2个子div重叠
前端·javascript·vue.js
弗拉唐7 小时前
springBoot,mp,ssm整合案例
java·spring boot·mybatis
oi778 小时前
使用itextpdf进行pdf模版填充中文文本时部分字不显示问题
java·服务器