14.最长公共前缀(C++实现)

题目

最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 “”。

示例

示例 1:

输入: [“flower”,“flow”,“flight”]
输出: “fl”
示例 2:

输入: [“dog”,“racecar”,“car”]
输出: “”
解释: 输入不存在公共前缀。

说明

所有输入只包含小写字母 a-z 。

源码

class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) 
    {
	    if (size(strs)==0)
		    return "";
        int N=size(strs), min=size(strs[0]);
        string a;
        for(int i=0;i<N;i++)
            if(size(strs[i])<min)
                min=size(strs[i]);
        for(int i=0;i<min;i++)
        {
            char simp=strs[0][i];
            for(int j=0;j<N;j++)
            {
                if(simp!=strs[j][i])
                    return a;
            }
		a.push_back(simp);
        }
        return a;
    }
};

你可能感兴趣的:(算法)