编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1: 输入: ["flower","flow","flight"]输出: "fl" 示例 2: 输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。
public string LongestCommonPrefix(string[] strs) { if(strs == null || strs.Length == 0) return ""; if(strs.Length == 1) return strs[0]; //找一个最短的长度的str int minLen = int.MaxValue; for(int i = 0;i<strs.Length;i++) { if(minLen > strs[i].Length) { minLen = strs[i].Length; } } int resLen = 0; for(int i = 0;i < minLen; i++) { for(int j = 0;j<strs.Length-1;j++) { if(strs[j][i] != strs[j+1][i]) { i = minLen; resLen--;//一下子跳不出,下面的++会执行,所以这里--矫正 break; } } resLen++; } return strs[0].Substring(0,resLen); }