牛客题霸--最长公共前缀

最长公共前缀

https://www.nowcoder.com/practice/28eb3175488f4434a4a6207f6f484f47?tpId=117&&tqId=34976&rp=1&ru=/ta/job-code-high&qru=/ta/job-code-high/question-ranking

最长公共前缀

题目链接

Solution

求n个串的最长公共前缀。
从0开始枚举答案,然后依次比较所有字符串的这一位,如果都相同,那么答案+1。
注意一下答案最大是最小的字符串的长度。
数据范围较小,暴力可过。

Code

class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        string ans;
        if (strs.empty()) return ans;
        int n = 1e9;
        for (int i = 0; i < (int)strs.size(); ++i) 
            n = min(n, (int)strs[i].size());
        for (int i = 0; i < n; ++i) {
            for (int j = 1; j < (int)strs.size(); ++j) 
                if (strs[j][i] != strs[0][i]) return ans;
            ans += strs[0][i];
        }
        return ans;
    }
};
全部评论

相关推荐

03-16 22:00
武汉大学 C++
幸福的小熊猫想要offer:我阿里投的 c++岗,面试官说自己是做 java 的,c++这辈子才有了
点赞 评论 收藏
分享
评论
6
1
分享

创作者周榜

更多
牛客网
牛客企业服务