leetcode 14. 最长公共前缀

14. 最长公共前缀

问题描述

编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1:
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z 。

问题分析

这题太简单了,直接上代码。只不过注意最后一行那里要返回return strs[0]用于处理只有一个字符串的情形。

代码

class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        int n = strs.size();
        if(n == 0) return "";
        string::iterator ite;
        int i = 0,j;
        for(ite = strs[0].begin(); ite != strs[0].end(); ite++)
        {            
            for(j = 1; j < n; j++)
            {
                if(strs[j][i] != strs[0][i])
                    return strs[0].substr(0,i);
            }
            i++;
        }
        return strs[0];
    }
};
posted @ 2019-11-23 17:55  曲径通霄  阅读(83)  评论(0编辑  收藏  举报