`

Longest Common Prefix 最长公共前缀

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

题目的要求是给定一个字符串数组,在所有字符串中找到最长的公共前缀。
对边界情况的解决,如果数组为空,那么就返回0。我们取出第一个元素,然后依次取第一个元素包含的字符,将这个字符与剩余的字符串相比,看在同一位置上是否相同,如果不同或者当前字符所在位置已经超过带比较字符串的最大长度我们就结束搜索,返回结果。代码如下:
public class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs == null || strs.length == 0) return "";
        String result = strs[0];
        int i;
        int end = 0;
        for(i = 0; i < result.length(); i++) {
            char c = result.charAt(i);
            for(int j = 1; j < strs.length; j++) {
                if(i == strs[j].length() || strs[j].charAt(i) != c) {
                    end = 1;
                    break;
                }
            }
            if(end == 1) break;
        }
        return result.substring(0, i);
    }
}
分享到:
评论

相关推荐

    LeetCode Longest Common Prefix解决方案

    该解决方案旨在解决LeetCode平台上的一道编程题目,即Longest Common Prefix(最长公共前缀),该问题要求在一个字符串数组中找到最长的公共前缀字符串。如果没有公共前缀,则返回一个空字符串。 问题描述: 给定...

    php-leetcode题解之最长公共前缀.zip

    主要涉及的是一个经典的算法问题——“最长公共前缀”(Longest Common Prefix),这个问题常常出现在LeetCode等在线编程挑战平台中,用于考察程序员对字符串处理和算法的理解。我们将通过PHP语言来解析并解答这个...

    c#-Leetcode面试题解之第14题最长公共前缀.zip

    本压缩包文件“c#-Leetcode面试题解之第14题最长公共前缀.zip”显然是针对LeetCode中的第14题——“最长公共前缀”(Longest Common Prefix)提供的解决方案。在这个问题中,我们需要找到一个字符串数组中的最长公共...

    最长公共前缀(java代码).docx

    最长公共前缀(Longest Common Prefix, LCP)是指在一组字符串中找到最长的相同前缀。例如,在字符串数组`{"flower","flow","flight"}`中,最长公共前缀为"fl";而在数组`{"dog","racecar","car"}`中,则不存在公共...

    python-leetcode面试题解之第14题最长公共前缀.zip

    在本压缩包中,我们关注的是一个Python编程与算法相关的主题,特别地是关于LeetCode面试题解的第14题——"最长公共前缀"(Longest Common Prefix)。这是一道常见的数据结构与算法问题,对于准备求职面试,尤其是...

    颜色分类leetcode-leetcode-[removed]我对Leetcode问题的解决方案

    最长公共前缀 20 Valid Parentheses 有效的括号 26 Remove Duplicates from Sorted Array 删除排序数组中的重复项 32 Longest Valid Parentheses 最长有效括号 33 Search in Rotated Sorted Array 搜索旋转排序数组 ...

    leetcode中文版-LeetCode:LeetcodeC++/Java

    leetcode中文版 LeetCode # Title Chinese Tag Solution 1 Two Sum ...最长公共前缀 string 16 3Sum Closest 最接近的三数之和 two pointers,array 21 Merge Two Sorted Lists 合并两个有序链表 lin

    c语言-c语言编程基础之leetcode题解第14题最长公共前缀.zip

    在本资源中,我们主要关注的是C语言编程基础以及如何使用C语言解决LeetCode上的算法问题,特别是第14题——“最长公共前缀”(Longest Common Prefix)。LeetCode是一个在线平台,提供了各种编程挑战,帮助开发者...

    java面试题-leetcode题解之第14题最长公共前缀.zip

    第14题“最长公共前缀”(Longest Common Prefix)是其中一道典型的字符串处理问题,它涉及到对字符串的高效操作和逻辑推理。在这个题目中,我们需要找出一个字符串数组中所有字符串的最长公共前缀。 首先,我们要...

    tclxspy#Articles#算法#26--查找字符串数组中最长的公共前缀1

    算法#26--查找字符串数组中最长的公共前缀Write a function to find the longest common prefix string

    最长公共前缀

    在Python里,字符串是可以通过ASCII比较大小的,可以利用max() 和 min()找到最大的字符串和最小的字符串,然后通过一轮循环找到最长公共前缀。 Python代码 class Solution: def longestCommonPrefix(self, strs: ...

    Python实现查找字符串数组最长公共前缀示例

    在Python编程中,查找字符串数组的最长公共前缀是一项常见的任务,特别是在处理文本数据或进行字符串分析时。这个过程涉及到字符串的遍历、比较以及判断,以找到所有字符串共享的最长的起始部分。以下是一个详细的...

    Longest-Common-Prefix:编写函数以在字符串数组中找到最长的公共前缀字符串

    编写一个函数以在字符串数组中找到最长的公共前缀字符串。 例如:{“ Leet”,“ LeetCode”,“ Leeters”,“ Leeds”}应该返回“ Lee” 解决方案: 字符串数组作为函数参数被接收。 为了寻找最长的公共前缀,...

    最长公共自序列的程序实现(含源码,可直接运行)

    最长公共自序列(Longest Common Self-Prefix, LCS)是一种字符串处理问题,它寻找两个或多个字符串中的最长的公共前缀。在这个特定的程序实现中,我们关注的是Java语言下的LCS算法。LCS问题在计算机科学中广泛应用...

    后缀数组相关题解1

    【POJ 2774】要求求出两个字符串的最长公共子串,这可以通过后缀数组和LCP(Longest Common Prefix,最长公共前后缀)数组直接计算得出。 【POJ 3693】的问题更复杂一些,需要找出字符串中重复次数最多的连续重复子...

    罗穗骞《后缀数组——处理字符串的有力工具》(有算法源码和解题源码)

    通过计算LCP(Longest Common Prefix,最长公共前缀)数组,可以找出两个或多个字符串的最长公共子串。LCP数组是基于后缀数组的,表示相邻两个后缀的最长公共前缀的长度。源码实现这部分功能有助于读者更好地掌握...

    js代码-最长公共前缀

    在本话题中,我们探讨的是"最长公共前缀"(Longest Common Prefix,LCP)问题,这是一个常见的字符串处理问题,常常在编程竞赛或面试中出现。它的目标是找到一个字符串数组中的所有字符串共有的最长前缀。 解决这个...

    ACM字符串题目及源代码[参照].pdf

    这份文档"ACM字符串题目及源代码[参照].pdf"涵盖了多个与字符串相关的题目和解决方案,主要集中在寻找最长公共子串、最长重复子串以及回文子串等问题上。 1. **最长公共子串**: - HDU1403最长公共子串:题目要求...

    后缀数组((处理字符串的有力工具))

    2. **最长重复子串**:后缀数组配合LCP(Longest Common Prefix)数组,可以找出字符串中的最长重复子串。LCP数组记录了后缀数组中相邻元素的最长公共前缀长度。 3. **模式匹配**:KMP算法等传统模式匹配算法在大...

    后缀数组学习笔记!!!

    后缀数组的应用广泛,其中一个重要的应用是解决最短公共前后缀(LCP,Longest Common Prefix)问题。通过高度数组,我们可以轻松地找到任意两个子串的最长公共前缀。此外,后缀数组还可以用于求解最长重复子串、字符...

Global site tag (gtag.js) - Google Analytics