LeetCode第14题:最长公共前缀

生命无罪,健康万岁,我是laity。

我曾七次鄙视自己的灵魂:

第一次,当它本可进取时,却故作谦卑;

第二次,当它在空虚时,用爱欲来填充;

第三次,在困难和容易之间,它选择了容易;

第四次,它犯了错,却借由别人也会犯错来宽慰自己;

第五次,它自由软弱,却把它认为是生命的坚韧;

第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;

第七次,它侧身于生活的污泥中,虽不甘心,却又畏首畏尾。

LeetCode第14题:最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:

输入:strs = [“flower”,”flow”,”flight”]
输出:”fl”

示例 2:

输入:strs = [“dog”,”racecar”,”car”]
输出:””
解释:输入不存在公共前缀。

分析:遍历单个值竖向与其余元素的对应索引位置进行比较。都相等直接返回该元素本身;碰到不相等的返回前一位置;都不相等或为null时返回空字符串。

时间复杂度: O(n²)

class Solution {
    public String longestCommonPrefix(String[] strs) {

        if (strs.length == 0 && strs == null) {
            return "";
        }

        int count = strs.length;
        int length = strs[0].length();

        for (int i = 0; i < length; i++) {
            char c = strs[0].charAt(i);

            for (int j = 1; j < count; j++) {
                if (i == strs[j].length() || strs[j].charAt(i) != c) {
                    return strs[0].substring(0, i);
                }
            }
        }
        return strs[0];
    }
}

全代码


public class LongestCommonPrefix {
    public static String longestCommonPrefix(String[] strs) {

        if (strs.length == 0 && strs == null) {
            return "";
        }

        int count = strs.length;
        int length = strs[0].length();

        for (int i = 0; i < length; i++) {
            char c = strs[0].charAt(i);

            for (int j = 1; j < count; j++) {

                if (i == strs[j].length() || strs[j].charAt(i) != c) {

                    return strs[0].substring(0, i);
                }
            }
        }
        return strs[0];
    }

    public static String longestCommonPrefix2(String[] strs) {

        if (strs.length == 0 || strs == null) {
            return "";
        }

        return "";
    }

    public static void main(String[] args) {
        String[] strs = new String[]{"flask", "flower", "flow", "django"};
        System.out.println(longestCommonPrefix(strs));
    }
}

踏实,努力,你想要的,岁月统统都会给你。我是Laity,正在前行的Laity。

Original: https://blog.csdn.net/duyun0/article/details/127817828
Author: itLaity
Title: LeetCode第14题:最长公共前缀

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/654370/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球