题目:最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1:
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
作者:力扣 (LeetCode)
链接:https://leetcode-cn.com/leetbook/read/array-and-string/ceda1/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
public class Solution {
public string LongestCommonPrefix(string[] strs) {
//判断是否为空长度是否为0
if(strs==null || strs.Length==0){
return "";
}
//取第一个数声明临时变量
string str=strs[0];
foreach( var item in strs){
//求得公共前缀
str= Action(item,str);
if(str.Length==0){
return "";
}
}
return str;
}
string Action(string str1 ,string str2){
//求得两个数字的最短长度
int tempLenght=Math.Min(str1.Length,str2.Length);
int index=0;
//求得前缀索引
while(index<tempLenght&& str1[index].Equals(str2[index])){
index++;
}
//切割字符串 求 公共前缀
return str1.Substring(0,index);
}
}