Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings.
Solution:
public class Solution {
public String longestCommonPrefix(String[] strs) {
// Start typing your Java solution below
// DO NOT write main() function
int n = strs.length;
if(n==0) return "";
int i=0;
for(i=0;i<strs[0].length();i++){
char c = strs[0].charAt(i);
for(int j=1;j<strs.length;j++){
if(i>=strs[j].length() || strs[j].charAt(i)!=c) return strs[0].substring(0,i);
}
}
return strs[0].substring(0,i);
}
}
以字符串个数作为外循环
class Solution {
public:
string longestCommonPrefix(vector<string> &strs) {
// Note: The Solution object is instantiated only once and is reused by each test case.
if (strs.size() == 0) {
return "";
}
int longest_common_prefix_len = strs[0].size();
for (int i = 1; i < strs.size(); ++i) {
for (int j = 0; j < longest_common_prefix_len; ++j) {
if (strs[i][j] != strs[0][j]) {
longest_common_prefix_len = j;
}
}
}
return strs[0].substr(0,longest_common_prefix_len);
}
};