简单题 最长公共前缀
题解
编写一个函数来查找字符串数组中的最长公共前缀,如果不存在公共前缀,返回空字符串。
题中说明仅有小写英文字母组成,且仅判断前缀相同即可。 所以从每一个字符串的第一个字符判断是否相同。
“flower” “flow” “flight” 可以看做二维数组,依次从上到下从左到右看,纵向比较是否相同。 比较到不相同的字符后,返回前一个字符。
if (strs.length == 0){
return "";
}
int rows = strs.length;
int lie = strs[0].length();
for (int i = 0;i < lie; i++){
char first = strs[0].charAt(i);
for (int j = 1;j < rows;j++){
if (strs[j].length() == i || strs[j].charAt(i) != first) {
return strs[0].substring(0, i);
}
}
}
return strs[0];
}
结果
-
作者:麦克猫Cat -
本文版权归作者和CSDN共有,欢迎交流
|