檢測大寫字母
一、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: 傳送門