14. Longest Common Prefix

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

// substring两个s都是小写
// 思路是首先求出最短长度len,然后比较每一个string的第一位,每一个string的第i位,直到不相同得到i,然后只要substring(0,i)就可以了

public class Solution {
    public String longestCommonPrefix(String[] strs) {
        if (strs.length == 0 || strs == null){
            return "";
        }
        int len = strs[0].length();
        for (String s : strs){
            len = Math.min(len, s.length());
        }
        StringBuilder sb = new StringBuilder();
        sb.append(strs[0]);
        int i;
        for (i = 0; i < len; i++){
            for (int j = 0; j < strs.length; j++){
                if (sb.charAt(i) != strs[j].charAt(i)){
                    return sb.substring(0, i);
                }
            }
        }
        return sb.substring(0, i);
    }
}

留下评论