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

求空格分割的英文句子中,最大单词长度。例如:"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);  
    }  
}
相关推荐
海南java第二人12 小时前
Java无锁并发编程:volatile+CAS原子类深度解析
java·cas·volatile
毕设源码-邱学长13 小时前
【开题答辩全过程】以 人才培养方案调查系统为例,包含答辩的问题和答案
java·eclipse
睡醒了叭13 小时前
图像分割-传统算法-区域分割
图像处理·人工智能·算法·计算机视觉
零雲13 小时前
Java面试:@Component和@Bean的区别是什么
java·开发语言·面试
代码游侠13 小时前
复习——网络基础知识
网络·笔记·网络协议·算法·http
沈阳信息学奥赛培训13 小时前
CCF GESP 2025/12/24 模拟测试 C++ 4级 编程题2
数据结构·算法
dddddppppp12313 小时前
c 模拟一个fat16文件系统
c语言·c++·算法
Jerry404_NotFound13 小时前
工厂方法模式
java·开发语言·jvm·工厂方法模式
一起养小猫13 小时前
【探索实战】Kurator统一流量治理深度实践:基于Istio的跨集群服务网格
java·云原生·istio
微风欲寻竹影13 小时前
深入理解Java中的String
java·开发语言