力扣 --- 最长公共前缀

题目描述:

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

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

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

提交结果:

相关推荐
启山智软3 分钟前
【智能商城系统技术架构优势】
java·spring·开源·商城开发
迷藏4945 分钟前
# 发散创新:基于Solidity的NFT智能合约设计与部署实战在区块链技术飞速发展
java·区块链·智能合约
tq10866 分钟前
从对象互操作性角度分析 `from` 与 `to` 方法的选择
java
紫_龙10 分钟前
最新版vue3+TypeScript开发入门到实战教程之路由详解三
前端·javascript·typescript
-SOLO-14 分钟前
使用Cursor操控正在打开的Chrome
前端·chrome
chiwei_hua14 分钟前
如何在 Blazor Web 前端中使用 C# 进行数据交互?
前端·c#·交互
不光头强19 分钟前
力扣78子集题解
算法·leetcode·深度优先
IT 行者21 分钟前
实战LangChain4j集成MCP Server:让Java AI应用具备工具调用能力
java·开发语言·人工智能
ok_hahaha24 分钟前
java从头开始-黑马点评-商户查询缓存
java·spring·缓存
Magic--25 分钟前
经典概率题:飞机座位分配问题(LeetCode 1227)超详细解析
算法·leetcode·职场和发展