LeetCode题解-最长公共前缀-Java

简介: 最长公共前缀-Java

最长公共前缀,这是一个暴力的解法,没有思路的话可以看看。

class Solution {
   
    public String longestCommonPrefix(String[] strs) {
   
        //输入只包含a-z
        if(strs.length==0)return "";
        int min = strMinLength(strs);
        int i=0;
        for (;i<min;i++){
   
            if (!isCharAtEqual(strs,i)){
   
                break;
            }
        }
        return strs[0].substring(0,i);
    }
    //获取字符串数组中最短字符串长度 作为比较次数的最大值
    public int strMinLength(String[] strArray) {
   
        int min=Integer.MAX_VALUE;
        for (String str : strArray) {
   
            min=Math.min(str.length(),min);
        }
        return min;
    }
    //遍历字符串数组 判断对应对应字符是否相等
    public boolean isCharAtEqual(String[] strs , int point) {
   
        char pre=strs[0].charAt(point);
        for (String str : strs) {
   
            if(str.charAt(point)!=pre){
   
                return false;
            }
        }
        return true;
    }
}
目录
相关文章
|
1月前
|
算法
Leetcode第十四题(最长公共前缀)
这篇文章介绍了一种算法,用于在给定的字符串数组中找到最长公共前缀,通过逐字符比较每个字符串的对应位置,一旦发现不匹配立即返回当前已匹配的子串作为公共前缀。
23 0
|
1月前
|
算法 Java
LeetCode(一)Java
LeetCode(一)Java
|
3月前
|
算法
LeetCode第14题最长公共前缀
该文章介绍了 LeetCode 第 14 题最长公共前缀的解法,通过取一个字符串作为基准,一列一列字符比较来找出最长公共前缀,时间复杂度为 O(m * n),同时提到也可使用二分查找法,但代码复杂度会上升。
LeetCode第14题最长公共前缀
|
3月前
|
算法 Java
LeetCode经典算法题:矩阵中省份数量经典题目+三角形最大周长java多种解法详解
LeetCode经典算法题:矩阵中省份数量经典题目+三角形最大周长java多种解法详解
50 6
|
3月前
|
存储 算法 Java
LeetCode经典算法题:打家劫舍java详解
LeetCode经典算法题:打家劫舍java详解
68 2
|
3月前
|
人工智能 算法 Java
LeetCode经典算法题:井字游戏+优势洗牌+Dota2参议院java解法
LeetCode经典算法题:井字游戏+优势洗牌+Dota2参议院java解法
50 1
|
3月前
|
存储 算法 Java
LeetCode经典算法题:预测赢家+香槟塔java解法
LeetCode经典算法题:预测赢家+香槟塔java解法
59 1
|
3月前
|
存储 算法 Java
LeetCode经典算法题:二叉树遍历(递归遍历+迭代遍历+层序遍历)以及线索二叉树java详解
LeetCode经典算法题:二叉树遍历(递归遍历+迭代遍历+层序遍历)以及线索二叉树java详解
79 0
|
3月前
|
算法 Java
LeetCode初级算法题:环形链表+排列硬币+合并两个有序数组java解法
LeetCode初级算法题:环形链表+排列硬币+合并两个有序数组java解法
54 0
|
3月前
|
存储 算法 Java
LeetCode初级算法题:两数之和+斐波拉契数列多种java解法
LeetCode初级算法题:两数之和+斐波拉契数列多种java解法
39 0