最长公共前缀

此博客链接:https://www.cnblogs.com/ping2yingshi/p/12499156.html

最长公共前缀(58min)

题目链接:https://leetcode-cn.com/problems/longest-common-prefix/

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

如果不存在公共前缀,返回空字符串 ""。

示例 1:

输入: ["flower","flow","flight"]
输出: "fl"
示例 2:

输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。

 题解:

           方法:逐个比较。

          思路:定义一个新的字符串把第一个字符串复制给新的字符串,把新的字符串和第二个字符串比较得到最长的前缀,再和第三个字符串比较得到最长字符串。

          说明:1.java中取字符串中的各个字符使用charAt();

                     2.java中substring用来截取字符串。

                      例如:  str=str.substring(int beginIndex,int endIndex);//截取str中从beginIndex开始至endIndex结束时的字符串,并将其赋值给str。

代码:

class Solution {
    public String longestCommonPrefix(String[] strs) {
        int len=strs.length;
        if(len == 0) 
           return "";
        String result = strs[0];
        for(int i =1;i<strs.length;i++) {
            int j=0;
            for(;j<result.length() && j < strs[i].length();j++) {
                if(result.charAt(j) != strs[i].charAt(j))
                    break;
            }
            result = result.substring(0, j);
           
        }
        return result;
    }
}

 

                    

posted @ 2020-03-15 18:28  萍2樱释  阅读(200)  评论(1编辑  收藏  举报