力扣 --- 最长公共前缀

题目描述:

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

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

示例 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;
    }
}

提交结果:

相关推荐
程序员清洒1 小时前
Flutter for OpenHarmony:GridView — 网格布局实现
android·前端·学习·flutter·华为
VX:Fegn08951 小时前
计算机毕业设计|基于ssm + vue超市管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·课程设计
0思必得02 小时前
[Web自动化] 反爬虫
前端·爬虫·python·selenium·自动化
徐徐同学2 小时前
cpolar为IT-Tools 解锁公网访问,远程开发再也不卡壳
java·开发语言·分布式
LawrenceLan2 小时前
Flutter 零基础入门(二十六):StatefulWidget 与状态更新 setState
开发语言·前端·flutter·dart
踩坑记录2 小时前
leetcode hot100 2.两数相加 链表 medium
leetcode·链表
秋秋小事2 小时前
TypeScript 模版字面量与类型操作
前端·typescript
2401_892000522 小时前
Flutter for OpenHarmony 猫咪管家App实战 - 添加提醒实现
前端·javascript·flutter
Yolanda943 小时前
【项目经验】vue h5移动端禁止缩放
前端·javascript·vue.js
Mr.朱鹏3 小时前
Nginx路由转发案例实战
java·运维·spring boot·nginx·spring·intellij-idea·jetty