题解 | #最长公共前缀#

最长公共前缀

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

思路:
        暴力模拟。
        二重循环寻找最长公共前缀。
        遍历字符串数组的每一个字符
class Solution {
public:
    
    string longestCommonPrefix(vector<string>& strs) {
        int n=strs.size();
        if(n==0)
            return "";
        int mi=5005;//初始化
        for(int i=0;i<n;i++){//寻找最短字符串的长度
            mi=min(mi,(int)strs[i].size());
        }
        string res="";
        for(int i=0;i<mi;i++){//二重循环寻找最长公共前缀
            for(int j=1;j<n;j++){
                if(strs[j][i]!=strs[j-1][i]){//如果不相等,则退出循环
                    return res;
                }
            }
            res+=strs[0][i];//累加字符
        }
        return res;
    }
};

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务