Longest Common Prefix

Jin Shang bio photo By Jin Shang

Write a function to find the longest common prefix string amongst an array of strings.

If there is no common prefix, return an empty string "".

Example 1:

Input: ["flower","flow","flight"]
Output: "fl"

Example 2:

Input: ["dog","racecar","car"]
Output: ""
Explanation: There is no common prefix among the input strings.

Note:

All given inputs are in lowercase letters a-z.

Solution:

Iterate through index, check every string against the first string.

class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        int i=0;
        if(strs.empty()) return "";
        while(true){
            char c;
            for(int j=0;j<strs.size();j++){
                if(i>=strs[j].size()){
                   return strs[0].substr(0,i);
                }
                if(j==0) c=strs[j][i];
                else{
                    if(strs[j][i]!=c) return strs[0].substr(0,i);
                }
            }
            i++;
            
        }
        return strs[0].substr(0,i);
    }
};