美文网首页
14. Longest Common Prefix

14. Longest Common Prefix

作者: 一棵会开花的树_f654 | 来源:发表于2018-01-23 08:35 被阅读0次

问题描述:

Write a function to find the longest common prefix string amongst an array of strings.

分析:

两两取最长相同前缀
代码如下:

  public String longestCommonPrefix(String[] strs) {
        if(strs.length == 0) return "";
        String prefix = strs[0];
        for(int i=1; i<strs.length; i++){
            while(strs[i].indexOf(prefix) != 0){
                prefix = prefix.substring(0, prefix.length()-1);
                if(prefix == "") return "";
            }
        }
        return prefix;
    }

涉及到两个String的函数:

1.indexOf()

以下摘自菜鸟教程:
indexOf() 方法有以下四种形式:
·public int indexOf(int ch): 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
·public int indexOf(int ch, int fromIndex): 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
·int indexOf(String str): 返回指定字符串在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
·int indexOf(String str, int fromIndex): 返回指定字符串在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

2.substring()

substring() 方法返回字符串的子字符串。
·public String substring(int beginIndex)

·public String substring(int beginIndex, int endIndex)

相关文章

网友评论

      本文标题:14. Longest Common Prefix

      本文链接:https://www.haomeiwen.com/subject/uxqraxtx.html