力扣刷题14. 最长公共前缀(Java)

题目:

编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:

输入: ["flower","flow","flight"]
输出: "fl"

示例 2:

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

说明:
所有输入只包含小写字母 a-z 。

思路:

1.暴力法 一个前缀一个前缀的过
在数组中找

class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs.length<1){
            return "";
        }
        int len = Integer.MAX_VALUE;
        StringBuffer stringBuffer = new StringBuffer("");
        for(int i = 0; i < strs.length; i++){
            len = Math.min(strs[i].length(),len);
        }
        boolean flag = true;
        for(int i = 0; i < len; i++){
            char temp = strs[0].charAt(i);
            //将当前字符全部比较一遍
            for(int j = 1; j < strs.length; j++){
                if(strs[j].charAt(i) != temp){
                    flag = false;
                    break;
                }
            }
            if(flag){
                stringBuffer.append(strs[0].charAt(i));
            }else{
                break;
            }
        }
        return  stringBuffer.toString();
    }
}

你可能感兴趣的:(力扣腾讯精选50道)