leetcode14. 最长公共前缀

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

如果不存在公共前缀,返回空字符串 ""。
示例 1:
---
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
---
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
//cpp
class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        if(strs.size()==0)
        return ""; ////输出的情况要考虑清楚4,[]
        string res = "";
        char temp;
        int j = 0, i = 1;
        for (j = 0; j<strs[0].length(); j++)
        {
            temp = strs[0][j];
            for (i = 1; i<strs.size(); i++)
            {
                if (strs[i][j] == '\0') return res; //输出的情况要考虑清楚1,["abc","ab"]
                else if (strs[i][j] == temp) continue;
                else break;  //退出的情况考虑清楚
            }
            if (i == strs.size()) res += temp;
            else if(i != strs.size()) return res; //输出的情况要考虑清楚2,["abc","ad"]
        }
        return res; //输出的情况要考虑清楚3,如[""]
    }
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容