【LeetCode算法-14】Longest Common Prefix

Write a function to find the longest common prefix string amongst an array of strings.

If there is no common prefix, return an empty string "".

Example 1:

Input: ["flower","flow","flight"]
Output: "fl"

Example 2:

Input: ["dog","racecar","car"]
Output: ""
Explanation: There is no common prefix among the input strings.

Note:

All given inputs are in lowercase letters a-z.

思路:

根据第一个字符串,不断去循环判断后面的字符串

代码:

复制代码
class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(null == strs || strs.length == 0){
            return "";
        }else if(strs.length == 1){
            return strs[0];
        }
        String result = "";
        for(int i = 1;i<=strs[0].length();i++){
            String prefix = strs[0].substring(0,i);
            for(int j=1;j<strs.length;j++){
                if(strs[j].startsWith(prefix)){
                    if(j==strs.length-1){
                        result = prefix;
                    }
                }else{
                    break;
                }
            }
        }
        return result;
    }
}
复制代码

String.substring(0,x),第二个参数很神奇,x就算超过字符串的长度也没关系,所以不用担心数组越界问题

posted @   嘉禾世兴  阅读(116)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2017-05-19 Binder
2017-05-19 多渠道打包(友盟统计)
点击右上角即可分享
微信分享提示