笔试题 求空格分割的英文句子中,最大单词长度。

求空格分割的英文句子中,最大单词长度。例如:"this is a word",最大单词长度为4。要求:不能用 split 函数对字符串进行切分,算法复杂度为o(n)

java 复制代码
public class MaxWordLength {  
  
    public static int maxWordLength(String sentence) {  
        if (sentence == null || sentence.isEmpty()) {  
            return 0;  
        }  
  
        int maxLength = 0;  
        int currentLength = 0;  
  
        for (int i = 0; i < sentence.length(); i++) {  
            char c = sentence.charAt(i);  
  
            if (c == ' ') {  
                // 遇到一个空格,更新最大长度并重置当前长度  
                if (currentLength > maxLength) {  
                    maxLength = currentLength;  
                }  
                currentLength = 0;  
            } else {  
                // 不是空格,增加当前单词的长度  
                currentLength++;  
            }  
  
        return maxLength;  
    }  
  
    public static void main(String[] args) {  
        String sentence = "this is a word";  
        int maxLen = maxWordLength(sentence);  
        System.out.println("Max word length: " + maxLen);  
    }  
}
相关推荐
Omics Pro13 分钟前
新型条件传输模型!虚拟细胞扰动预测
数据库·人工智能·算法·机器学习·自然语言处理
敲代码的瓦龙15 分钟前
Jetpack?DataBinding!!!
android·java·开发语言·mysql·android-studio
斯维赤18 分钟前
Spring AI | 结构化输出 & 多模态 一篇讲透
java·后端
程序员清风21 分钟前
聊聊我的AI学习方法与思考!
java·后端·面试
AI深栈23 分钟前
第 14 章 · LangGraph4j 入门:AI Agent 什么时候该上状态图
java·人工智能
爱奥尼欧25 分钟前
【C++】map、set 的底层是什么?红黑树五条性质、插入旋转到模拟实现
开发语言·数据结构·c++
黄金龙PLUS27 分钟前
5个800比特大状态置换算法的设计与分析
算法·网络安全·密码学·哈希算法·同态加密
摇滚侠28 分钟前
《Spring Boot 3:高级与架构设计》第 2 章 IOC容器的高级机制 Environment 个人理解 4
java·spring boot·笔记·后端
zl_dfq29 分钟前
Java学习1 之 【核心机制、程序基础结构、I/O】
java
政企项目老覃37 分钟前
大模型 Agent 自主任务编排:电商客服地址解析从 12% 失败率到 2.1% 的落地复盘
人工智能·程序人生·算法