检测大写字母
一、LeetCode题解
瞧一瞧(求star!)
- LeetCode题解Javascript版本:Gitbook版本传送门
- LeetCode题解Javascript版本:CSDN传送门
- 前端进阶笔记:Gitbook传送门
二、算法题
题目
给定一个单词,你需要判断单词的大写使用是否正确。
我们定义,在以下情况时,单词的大写用法是正确的:
全部字母都是大写,比如"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
};
结果
关于我
- decs: 19年毕业的前端开发一枚,沉迷Js
- E-mail: [email protected]
- 个人博客: CSDN
- GitHub: 传送门