美文网首页
leetcode14. 最长公共前缀

leetcode14. 最长公共前缀

作者: 冰源 | 来源:发表于2018-09-16 23:44 被阅读8次
    编写一个函数来查找字符串数组中的最长公共前缀。
    
    如果不存在公共前缀,返回空字符串 ""。
    
    示例 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,如[""]
        }
    };
    

    相关文章

      网友评论

          本文标题:leetcode14. 最长公共前缀

          本文链接:https://www.haomeiwen.com/subject/ptiqnftx.html