最长公共前缀

Posted on 2018-09-08 09:03  otonashi  阅读(241)  评论(0)    收藏  举报

编写一个函数来查找字符串数组中的最长公共前缀。

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

stringObject.indexOf(searchvalue,fromindex)该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。

substring() 方法用于提取字符串中介于两个指定下标之间的字符,返回的子串包括 start 处的字符,但不包括 stop 处的字符。