LeetCode题解:520.检测大写字母

检测大写字母

一、LeetCode题解

瞧一瞧(求star!)

二、算法题

题目

给定一个单词,你需要判断单词的大写使用是否正确。

我们定义,在以下情况时,单词的大写用法是正确的:

全部字母都是大写,比如"USA"。
单词中所有字母都不是大写,比如"leetcode"。
如果单词不只含有一个字母,只有首字母大写, 比如 “Google”。
否则,我们定义这个单词没有正确使用大写字母。

示例 1:

输入: "USA"
输出: True
示例 2:

输入: "FlaG"
输出: False

解法一 (暴力法)

思路

  • 按照规则依次遍历

代码

function changeWord(s) {
    var newS = s.toUpperCase()
    return newS === s
}
var detectCapitalUse = function(word) {
    const len = word.length

    if(len === 1 && !changeWord(word)) return true
    if(changeWord(word[0])){
        let index = 1
        for(let i = 1; i < len; i++){
            if(changeWord(word[i])) index++
        }
        return index === len || index === 1
    }
    if(!changeWord(word[0])){
        for(let i = 1; i < len; i++){
            if(changeWord(word[i])) return false
        }
        return true
    }
    return false
};

结果

在这里插入图片描述

关于我

猜你喜欢

转载自blog.csdn.net/jbj6568839z/article/details/106265191