LeetCode 练习 day10

14. 最长公共前缀

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

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

示例 1:

输入:strs = [“flower”,“flow”,“flight”]
输出:“fl”

示例 2:

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

class Solution {
    public String longestCommonPrefix(String[] strs) {
        int size = strs.length;
        if(size == 1){
            return strs[0];
        }
        int sum = strs[0].length();
        for(int i = 1;i<size;i++){
            sum = Math.min(strs[i].length(), sum);
            for(int j = 0;j<sum;j++){
                if(strs[0].charAt(j)!=strs[i].charAt(j)){
                    sum = j;
                }
            }
        }
        return strs[0].substring(0,sum);
    }
}

解题思路

使用第一个单词和后面的进行对比,相等的前置则记录当前位置。

你可能感兴趣的:(leetcode,java,linux)