`
frank-liu
  • 浏览: 1682142 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

leetcode: Longest Common Prefix

 
阅读更多

问题描述:

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

 

原问题链接:https://leetcode.com/problems/longest-common-prefix/

 

问题分析:

    这个问题相对来说比较好解决。对于一组string来说,我们可以以第一个为基准,然后从它的第一个字符开始去和后面的比较,如果后面所有的string都包含有这个则比较下一个,直到已经达到后面string长度或者后面发现有不匹配的了。

 

public class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs.length < 1) return "";
        StringBuilder builder = new StringBuilder("");
        for(int i = 0; i < strs[0].length(); i++) {
            char c = strs[0].charAt(i);
            for(int j = 1; j < strs.length; j++) {
                if(i >= strs[j].length() || strs[j].charAt(i) != c) {
                    return builder.toString();
                }
            }
            builder.append(c);
        }
        return builder.toString();
    }
}

    这个问题里容易忽略的就是前后字符串的长度可能不一致,另外针对string列表长度也要注意一些特殊情况。

 

分享到:
评论

相关推荐

    LeetCode Longest Common Prefix解决方案

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

    javalruleetcode-LeetCode::lollipop:个人LeetCode习题解答仓库-多语言

    Prefix 15 Three Sum 16 Three Sum Closest 20 Valid Parentheses 26 Remove Duplicates from Sorted Array 48 Rotate Image 53 Maximum Subarray 55 Jump Game 56 Merge Intervals 64 Minimum Path Sum 73

    c语言-leetcode 0014-longest-common-prefix.zip

    c c语言_leetcode 0014_longest_common_prefix.zip

    leetcode卡-LeetCode:LeetCode题解

    leetcode卡 LeetCode LeetCode题解 目录 字符串问题 ID Title C++ 难度 ...Common Prefix :star: 0038 Count and Say :star: 0043 Multiply Strings :star: :star: 大数相乘 0044 Wild Card Matchi

    lrucacheleetcode-leetcode:leetcode

    Common Prefix 15. 3Sum 20. Valid Parentheses 21. Merge Two Sorted Lists 22. Generate Parentheses 25. Reverse Nodes in k-Group 26. Remove Duplicates from Sorted Array 27. Remove Element 28. Implement ...

    leetcode338-LeetCode:LeetCode刷题总结

    LeetCode刷题总结 1.Two Sum 2.Add Two Numbers 3.Longest Substring Without Repeating Characters 4.Median of Two Sorted Arrays 5.Longest Palindromic Substring (Manacher算法待完成) 6.ZigZag Conversion 7....

    leetcode中国-leetcode:leetcode刷题

    longest common prefix , 简单 valid number, hard, 用有限自动机 integer to roman ,easy , 模拟 roman to integer ,easy , 模拟 count and say , easy , 模拟 Anagrams 字符串处理,map Simplify Path,字符串处理,...

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

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

    leetcode双人赛-LeetCode:力扣笔记

    leetcode双人赛LeetCode 编号 题目 难度 题型 备注 Two Sum 简单 Add Two Numbers 中等 链结串列 重要 Longest Substring Without Repeating Characters 中等 字串 重要 Median of Two Sorted Arrays 困难 数学 ...

    leetcode2sumc-leetcode:JavaScript版本leetcode中文版代码

    leetcode 2 sum c leetcode 力扣(Leetcode)编程题,JavaScript版本。...Prefix 简单 15 3Sum 中等 16 3Sum Closest 中等 17 Letter Combinations of a Phone Number DFS 中等 18 4Sum 中等 19 Remo

    java-leetcode题解之014-Longest-Common-Prefix

    java入门 java_leetcode题解之014_Longest_Common_Prefix

    leetcode答案-leetcode:leetcode答案

    在LeetCode上,每道题目都有一个唯一的ID和标题,例如“两数之和”(Two Sum)或“最长公共前缀”(Longest Common Prefix)。解答这些题目时,首先要理解题意,明确输入和输出的格式,然后选择合适的算法或数据结构...

    javalruleetcode-leetcode:leetcode问题的解决方案

    java lru leetcode Leetcode 问题的解决方案 问题 解决方案 0001_Two_Sum 0002_Add_Two_Numbers ...0014_Longest_Common_Prefix 0015_3总和 0016_3Sum_Closest 0017_Letter_Combinations_of_a_Phone_N

    C语言-leetcode题解之14-longest-common-prefix.c

    c语言入门 C语言_leetcode题解之14-longest-common-prefix.c

    leetcode:LeetCode问题的解决方案

    罗马数字转整数Easy14Longest Common Prefix153SumMedium163Sum ClosestMedium1717. 电话号码的字母组合Mediumjava184SumMedium19Remove Nth Node From End of ListJavaMediumJava20Valid ParenthesesJavaEasyJav

    js-leetcode题解之14-longest-common-prefix.js

    js js_leetcode题解之14-longest-common-prefix.js

    leetcode2-leetcode:leetcode解决方案

    2. 题目文件:每个文件对应一个LeetCode题目,文件名可能是题目的ID或者题目名称,如"001_two_sum.py"或"14_longest_common_prefix.cpp"。 3. README.md:通常会包含项目简介、如何运行测试、贡献指南等信息。 4. ...

    leetcode:Leetcode解决方案

    - 题目“最长公共前缀”(Longest Common Prefix)展示了字符串操作和循环结构的使用。 总之,结合LeetCode提供的编程挑战和Go语言的强大功能,你可以不断提升自己的编程和算法能力。通过不断实践和学习,你将在...

    leetcodepython001-LeetCode:力码

    014_Longest_Common_Prefix 5 月 12 日。 2021年 Python 006 020_Valid_括号 5 月 12 日。 2021年 Python 007 021_Merge_Two_Sorted_Lists 2021 年 6 月 10 日 C# 008 125_Valid_Palindrome 2021 年 6 月 12 日 C#...

    LeetCode:在 LeetCode 上练习算法

    例如,你可能会遇到经典的算法题目,如“两数之和”(Two Sum),“最长公共前缀”(Longest Common Prefix)等,这些问题都可以用 JavaScript 来解决。 算法是计算机科学的基础,理解并能熟练运用它们是成为一名...

Global site tag (gtag.js) - Google Analytics