【leetcode】第14题 Longest Common Prefix 题目+解析+代码

来源:互联网 发布:qq企业邮箱绑定域名 编辑:程序博客网 时间:2024/06/14 20:17

【题目】

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

【解析】

这道题比较简单,就是找出string数组中所有字符串的最大共同前缀。

【代码】

public class Solution {    public String longestCommonPrefix(String[] strs) {        int n=strs.length;        if(n==0) return "";        int m=strs[0].length();        String res="";        for(int i=1;i<n;i++)        {            m=Math.min(m,strs[i].length());        }        for(int j=0;j<m;j++)        {            char ch=strs[0].charAt(j);            for(int i=1;i<n;i++)            {                if(ch!=strs[i].charAt(j))                    return res;                            }            res+=ch;        }        return res;    }}


看discuss里有个比较简单的方法,使用了indexOf()。

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




原创粉丝点击