当前位置: 首页 > article >正文

java练习(4)

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

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

public class Solution {
    public String longestCommonPrefix(String[] strs) {
        // 如果数组为空,直接返回空字符串
        if (strs == null || strs.length == 0) {
            return "";
        }
        // 假设第一个字符串为最长公共前缀
        String prefix = strs[0];
        // 遍历数组中其余的字符串
        for (int i = 1; i < strs.length; i++) {
            // 当当前字符串不以当前前缀开头时
            while (!strs[i].startsWith(prefix)) {
                // 缩短前缀,去掉最后一个字符
                prefix = prefix.substring(0, prefix.length() - 1);
                // 如果前缀为空,说明不存在公共前缀,直接返回空字符串
                if (prefix.isEmpty()) {
                    return "";
                }
            }
        }
        return prefix;
    }

    public static void main(String[] args) {
        Solution solution = new Solution();
        String[] strs = {"flower", "flow", "flight"};
        String result = solution.longestCommonPrefix(strs);
        System.out.println("最长公共前缀是: " + result);
    }
}


http://www.kler.cn/a/530404.html

相关文章:

  • React中useState()钩子和函数式组件底层渲染流程详解
  • 深入理解linux中的文件(上)
  • C语言 --- 分支
  • 小程序的协同工作与发布
  • 像接口契约文档 这种工件,在需求 分析 设计 工作流里面 属于哪一个工作流
  • 【JAVA基础】双亲委派
  • 智慧城市(城市大脑)建设方案
  • 后台管理系统通用页面抽离=>高阶组件+配置文件+hooks
  • 基于YOLO11的遥感影像山体滑坡检测系统
  • 【深度学习】DeepSeek模型介绍与部署
  • Vue 3 30天精进之旅:Day 12 - 异步操作
  • 科技快讯 | OpenAI首次向免费用户开放推理模型;特朗普与黄仁勋会面;雷军回应“10后小学生深情表白小米SU7”
  • 如何Docker中搭建swoole环境
  • MySQL数据库环境搭建
  • 初级数据结构:栈和队列
  • 工业相机如何降低CPU占用率
  • FastDFS实用笔记 (Docker 搭建环境 + 整合 SpringBoot)
  • 【大数据技术】教程01:搭建完全分布式高可用大数据集群(VMware+CentOS+FinalShell)
  • 读取要素类中的几何信息
  • Java项目: 基于SpringBoot+mybatis+maven+mysql实现的疫苗发布和接种预约管理系统(含源码+数据库+开题报告+毕业论文)
  • 【DeepSeek】本地快速搭建多模态理解和文生图 Janus-Pro-7B模型
  • 小程序项目-购物-首页与准备
  • 主要功能是在给定一个随机种子的情况下,计算随机傅里叶特征
  • 二分法模板
  • DeepSeek 介绍及对外国的影响
  • 【Linux系统】信号:认识信号 与 信号的产生