Algorithms—14.Longest Common Prefix

原创 2015年07月07日 14:29:38

思路:先比较前2个String,找出公共开头,然后从第三个开始逐次比较,当公共开头字符串长度为0时,直接返回"";

public class Solution {
    public String longestCommonPrefix(String[] strs) {
    	if (strs.length==0) {
			return "";
		}
        if (strs.length==1) {
			return strs[0];
		}
        int n=0;
        if (strs[0].length()<strs[1].length()) {
			n=strs[0].length();
		}else {
			n=strs[1].length();
		}
        String answer="";
        for (int i = 0; i < n; i++) {
        	String k0=strs[0].substring(i,i+1);
        	String k1=strs[1].substring(i,i+1);
        	if (k0.equals(k1)) {
				answer+=k0;
			}else {
				break;
			}
		}
        if (strs.length==2) {
			return answer;
		}
        for (int i = 2; i < strs.length; i++) {
        	if (answer.length()==0) {
				return "";
			}
			int length=0;
			String k="";
			if (strs[i].length()<answer.length()) {
				length=strs[i].length();
			}else {
				length=answer.length();
			}
			while (!answer.substring(0, length).equals(strs[i].substring(0, length))) {
				length--;
			}
			answer=answer.substring(0,length);
		}
        return answer;
    
        
    }
}


耗时:320ms,处于中游,一次编译通过,哇哈哈。


版权声明:本文为博主原创文章,未经博主允许不得转载。

leetcode - 14.Longest Common Prefix

Longest Common Prefix
  • qq_27350929
  • qq_27350929
  • 2017年03月02日 19:47
  • 61

leetcode: 14.Longest Common Prefix

题目:最长公共前缀  Write a function to find the longest common prefix string amongst an array of strings.  ...
  • betty1121
  • betty1121
  • 2018年02月02日 22:22
  • 7

LeetCode 14.Longest Common Prefix

题目: write a function to find the longest common prefix string amongst an array of strings. 分析与解答: ...
  • caishenfans
  • caishenfans
  • 2015年02月04日 11:58
  • 302

LeetCode----- 14.Longest Common Prefix

Write a function to find the longest common prefix string amongst an array of strings. 解题思路:首先从字符串数组...
  • yb1020368306
  • yb1020368306
  • 2017年09月28日 22:01
  • 90

[leetcode] 14.Longest Common Prefix

题目: Write a function to find the longest common prefix string amongst an array of strings. 题意: 找出...
  • u014673347
  • u014673347
  • 2015年08月31日 17:12
  • 202

Leetcode||14.Longest Common Prefix

4. Longest Common Prefix Total Accepted: 132475Total Submissions: 440240Diffic...
  • Lingfu74
  • Lingfu74
  • 2016年11月05日 19:29
  • 269

14.Longest Common Prefix

思路:直接明了。找出最短的字符串,然后跟第一个字符串比较,用比较得到的结果去跟第二个字符串比较。直到结束。时间复杂度O(mn),实际会好点 class Solution { public:   ...
  • wscdylzjy
  • wscdylzjy
  • 2015年06月12日 12:51
  • 166

[LeetCode]14.Longest Common Prefix

【题目】 Longest Common Prefix  Total Accepted: 8840 Total Submissions: 33118My Submissions Writ...
  • SunnyYoona
  • SunnyYoona
  • 2014年04月12日 21:38
  • 1844

[leetcode:python]14.Longest Common Prefix

题目:最长公共前缀 Write a function to find the longest common prefix string amongst an array of strings. 题...
  • NXHYD
  • NXHYD
  • 2017年05月10日 19:07
  • 902

【LeetCode】14.Longest Common Prefix解题报告

给定一个包含多个字符串的列表,求这些字符串中的最常公共前缀。 先考虑特殊情况,列表为空和一个元素的时候,列表为空则返回为空,列表只包含一个元素,则返回该元素 对这整个列表进行怕排序选择长度最小的字...
  • dpengwang
  • dpengwang
  • 2018年01月16日 20:45
  • 7
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Algorithms—14.Longest Common Prefix
举报原因:
原因补充:

(最多只允许输入30个字)