14. Longest Common Prefix

题目:

写一个函数(或方法)来寻找一个字符串数组中的最长公共前缀。


14. Longest Common Prefix_第1张图片
题目
解析:

这道题目的意思是给你一组字符串,然后找出其中最长的公共前缀,这个不难找,但是如何找的又快又好呢?

思路:

在头部的公共子串,最长也不过是等于所有字符串里面的最小长度,所以第一个字符串的长度一定大于或等于最长公共前缀。首先从第一个字符开始比较,如果每个字符串的第一个字符相同,那么计入公共前缀中,依次向后比较,直到找到一个不同的字符时终止。

代码:
class Solution {  
    public String longestCommonPrefix(String[] strs) {  
        if(strs.length==0)return ""; 
        int len = strs[0].length();
        int minp = 0;
        for(int m =0;m
后记:

这又是一道esay题目,但是我解题起来还是花了点时间,主要是开始没有考虑到先按断最短字符串的问题,直接默认了从第一个数组的第一位开始往后比较,这样存在问题,如:第二个字符串比第一个字符串还短,甚至为空串时,程序就会报错:index out of range表示超出范围。
以后考虑问题还是要全面且准确。

你可能感兴趣的:(14. Longest Common Prefix)