题解 | #最长公共前缀#

最长公共前缀

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

题意:
        给你一个大小为 n 的字符串数组 strs ,其中包含n个字符串 , 编写一个函数来查找字符串数组中的最长公共前缀,返回这个公共前缀。

方法:
暴力

思路:
        暴力模拟。
        二重循环寻找最长公共前缀。
        遍历字符串数组的每一个字符。

    

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;
    }
};


时间复杂度:
空间复杂度:


全部评论

相关推荐

不知道怎么取名字_:两个方向 1.简历针对性准备下 2.面试前也需要准备的 主要还是要看各个公司需求,看公司行业和岗位描述,那里面已经写了对技术的需求,一份简历,不可能和所有嵌入式岗位都匹配的
投递北京经纬恒润科技股份有限公司等公司9个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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