美文网首页
LeetCode 14 最长公共前缀 Java

LeetCode 14 最长公共前缀 Java

作者: trayliu_小马过河 | 来源:发表于2020-05-19 16:23 被阅读0次
    
     public String longestCommonPrefix(String[] strs) {
            //判断极限情况
            if (strs == null || strs.length == 0) {
                return "";
            }
            if (strs.length == 1) {
                return strs[0];
            }
    
            String result = strs[0];  //默认用第一个字符串比较
    
            for (int i = 1; i < strs.length; i++) {//所以从第二个字符串开始比
    
                char[] chars = strs[i].toCharArray();
                int start = -1; //索引
                int length = 0;
    
                for (int j = 0; j < chars.length; j++) {
    
                    if (result.length() > j) {
     
                        if (result.charAt(j) == chars[j]) {
                            if (start == -1) {//判断开始索引
                                start = j;
                            }
                            length++; //判断length
                        }else{
                            break;
                        }
                    }
                }
              
                if (start != -1) {//判断是否有公共,处理截取
                    result = result.substring(start, start + length);
                } else {
                    result = "";
                }
            }
            return result;
        }
    

    相关文章

      网友评论

          本文标题:LeetCode 14 最长公共前缀 Java

          本文链接:https://www.haomeiwen.com/subject/yevbohtx.html