题解 | #最长公共前缀#

最长公共前缀

https://www.nowcoder.com/practice/28eb3175488f4434a4a6207f6f484f47

import java.util.*;


public class Solution {
    /**
     *
     * @param strs string字符串一维数组
     * @return string字符串
     */
    public String longestCommonPrefix (String[] strs) {
        if (strs==null||strs.length==0) {
            return "";
        }
        // write code here
        if (strs.length == 1 ) {
            return strs[0];
        }
        StringBuffer sb = new StringBuffer();
        // 以charsZero为基准,一个个比较
        char[] charsZero = strs[0].toCharArray();
        for (int i = 0; i < charsZero.length; i++) {
            char compChar = charsZero[i];
            for (int j = 1; j < strs.length; j++) {
                // 有一个不相同或者长度不够 即返回最大公共
                if (strs[j].length() <= i || strs[j].charAt(i) != compChar) {
                    return sb.toString();
                }
            }
            // 每次全部相同,添加到sb
            sb.append(compChar);
        }

        return sb.toString();
    }
}

全部评论

相关推荐

半解316:内容充实,细节需要修改一下。 1,整体压缩为一页。所有内容顶格。 2,项目描述删除,直接写个人工作量 修改完之后还需要建议,可以私聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务