Find longest common prefix?

前端 未结 9 1885
忘掉有多难
忘掉有多难 2020-12-10 03:50

In two strings:

\"Mary Had a Little Lamb\"
\"Mary Had a Big Lamb\"

should return

\"Mary Had a \"

9条回答
  •  情歌与酒
    2020-12-10 04:24

    This solution applied to a multiple string array. When you have 3 or 4 strings, it's better to use StringBuilder. For 2 strings, it's ok to use substring. Code in C#:

        public string LongestCommonPrefix(string[] strs) {
        if(strs.Length == 0) return string.Empty;
    
        Array.Sort(strs);
    
        var first = strs[0];
        var last = strs[strs.Length - 1];
    
        var sb = new StringBuilder();
        for(int i = 0; i< first.Length; i++)
        {
            if(first[i] != last[i])
            {
                break;
            }
            sb.Append(first[i]);
        }
    
        return sb.ToString();
    }
    

提交回复
热议问题