首页 > 编程语言 >每日算法之14. 最长公共前缀

每日算法之14. 最长公共前缀

时间:2023-01-09 15:25:20浏览次数:35  
标签:14 strs 算法 int length 公共 最长 前缀

14. 最长公共前缀

题目描述

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

方法 暴力算法

先判断字符串数组是否有为空,为空直接返回空
令第一个字符串作为基准进行比较
设置一个长度,作为最后最长公共前缀的长度
循环判断,选取最小长度

代码

package easy.最长公共前缀14;

class Solution {
    public String longestCommonPrefix(String[] strs) {
        //如果为空,直接返回空
        if ("".equals(strs[0])) return "";
        //第一个作为基准进行比较
        String s = strs[0];
        //记录最长公共前缀的长度
        int len = s.length();
        for (int i = 1; i < strs.length; i++) {
            int l = 0;
            if ("".equals(strs[i])) return "";
            int length = Math.min(s.length(), strs[i].length());
            for (int j = 0; j < length; j++) {
                if (s.charAt(j) == strs[i].charAt(j)) {
                    l++;
                } else {
                    break;
                }
            }
            if (l < len) len = l;

        }
        return s.substring(0, len);
    }

}

标签:14,strs,算法,int,length,公共,最长,前缀
From: https://www.cnblogs.com/loongnuts/p/17037153.html

相关文章

  • Model-Agnostic Meta-Learning (MAML)模型介绍及算法详解
    paper:​​​https://link.zhihu.com/?target=https%3A//arxiv.org/pdf/1703.03400.pdf​​ MAML在学术界已经是非常重要的模型了,论文Model-AgnosticMeta-LearningforFa......
  • 算法--2023.1.9
    1.力扣128-最长连续序列classSolution{publicintlongestConsecutive(int[]nums){//通过hashset保存去重复后的所有数据intn=nums.lengt......
  • 贪心算法
    一、贪心算法思想1)贪心算法原理贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局......
  • 详解 Kruskal 最小生成树算法
     求最小生成树算一般有两种算法:Prim和Kruskal。Prim的时间复杂度为\(O(|V|^{2})\),更适合稠密图。而Kruskal的时间复杂度为\(O(logV)\)或\(O(logE)\)。更适......
  • P7114 [NOIP2020] 字符串匹配 解题报告
    ~~NOIP的蓝题果然还是好难啊啊啊啊~~前言:作为一道NOIP的真题,这道题放在T2难度并不是特别大,不过考点还是比较偏的,扩展KMP和树状数组的组合,并且还带有一定的思维难度,......
  • ACM&OI 多项式算法专题
    ACM&OI基础数学算法专题一、FFT基础拉格朗日插值复数的运算性质和几何性质单位根和单位根反演快速傅里叶变换(FFT)的分治实现快速傅里叶逆变换(IFFT)快速傅里叶变换的......
  • 退火算法学习笔记
    初创建于2022-02-0900:29前段时间学习了一下退火算法。这里简单记一下踩过的坑~退火算法是一种搜索算法,我认为其核心思想便是”以一定的概率接受一个更差的解“,这样可......
  • 【车间调度】基于GA/PSO/SA/ACO/TS优化算法的车间调度比较(Matlab代码实现)
    目录1概述2 FJSP描述3运行结果3.1main1运行结果3.2main2运行结果4Matlab代码 5参考文献6写在最后1概述柔性作业车间调度问题(FlexibleJobshopSched-ulingPro......
  • 深度强化学习专栏 —— 2.手撕DQN算法实现CartPole控制
    我将文章发表在了古月居,一起来看看吧!​​戳这里​​......
  • CCSP学习笔记-NIST 800-145
    本文英文版来自美国国家标准与技术实验室的文档SpecialPublication800-145《TheNISTDefinitionofCloudComputing》September2011版本。一 云计算概念定义Clo......