LeetCode No.14 最长公共前缀

一、题目描述

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 ""。

示例 1:

输入: ["flower","flow","flight"]
输出: "fl"


示例 2:

输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
说明:

所有输入只包含小写字母 a-z 。

二、解题思路

1、判断字符串数组的长度,如果长度为0,则返回空字符串

2、遍历字符串数组,确定字符串的最短长度min,同时min也是公共子串长度的最大值

3、初始化结果公共前缀为空rs="",最长公共前缀长度n=1

4、循环遍历前n个字符前缀,当n=min时,循环结束。

判断前n个字符是否为公共前缀,如果不是,则返回rs,算法结束;否则,判断前n+1个字符是否为公共前缀。

三、代码

public class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs.length==0){
            return "";
        }
        int min=Integer.MAX_VALUE;
        for(String str: strs){
            min=str.leng
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 博客之星2020 设计师:CY__0809 返回首页
实付 79.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值