Loading

LeetCode 14 最长公共前缀

LeetCode14 最长公共前缀

题目描述

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

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

样例

输入: ["flower","flow","flight"]
输出: "fl"
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。

算法分析

枚举即可,就用第一个字符串遍历一遍

简单问题不要复杂化

时间复杂度\(O(nm)\)

Java代码

class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs.length == 0) return "";

        if(strs.length == 1) return strs[0];

        StringBuilder sb = new StringBuilder();
        for(int i = 0; i < strs[0].length(); i++){
            char c = strs[0].charAt(i);
            for(int j = 1; j < strs.length; j ++){
                if( i > strs[j].length() - 1 || strs[j].charAt(i) != c){
                    return sb.toString();
                }
            }
            sb.append(c);
        } 

        return sb.toString();
    }
}
posted @ 2020-10-26 21:34  想用包子换论文  阅读(79)  评论(0)    收藏  举报