Problem: 14. 最长公共前缀
思路
- 从前到后,枚举每个单词的每个位,不相等就返回
复杂度
时间复杂度: : O ( n m ) O(nm) O(nm)
空间复杂度: O ( 1 ) O(1) O(1)
Code
class Solution {
public String longestCommonPrefix(String[] strs) {
if(strs == null || strs.length == 0)
return "";
int n = strs.length;
int m = strs[0].length();
for(int i = 0; i < m; i++)//枚举位
{
char c = strs[0].charAt(i);
for(int j = 1; j < n; j++)// 枚举每个单词
{
if(i == strs[j].length() || strs[j].charAt(i) != c)
return strs[0].substring(0,i);//截取区间 [0,i)
}
}
return strs[0];//说明所有单词都一样
}
}