leetcode 520. 检测大写字母

  • 题目描述
  • 解题思路
  • 执行结果
leetcode 520. 检测大写字母.


题目描述

  1. 检测大写字母

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

全部字母都是大写,比如 "USA" 。 单词中所有字母都不是大写,比如 "leetcode" 。 如果单词不只含有一个字母,只有首字母大写, 比如 "Google" 。 给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。

示例 1:

输入:word = "USA" 输出:true 示例 2:

输入:word = "FlaG" 输出:false

提示:

1 <= word.length <= 100 word 由小写和大写英文字母组成

解题思路

法1

模拟判断
模拟不满足条件的判断\

  1. 大写字母在小写字母之后 \
  2. 有多个大写字母与小写字母
  • 时间复杂度(O(n))
  • 空间复杂度(O(1))

执行结果

法1

// 520. 检测大写字母
// 我们定义,在以下情况时,单词的大写用法是正确的:
// 全部字母都是大写,比如 "USA" 。
// 单词中所有字母都不是大写,比如 "leetcode" 。
// 如果单词不只含有一个字母,只有首字母大写, 比如 "Google" 。
// 给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。
func detectCapitalUse(word string) bool {
 for i := 1; i < len(word); i++ {
  if word[i] < 97 && word[i-1] >= 97 || word[1] < 97 && word[i] >= 97 { //模拟不满足条件的判断1. 大写字母在小写字母之后 2.有多个大写字母与小写字母
   return false
  }
 }
 return true
}

执行结果: 通过 显示详情 查看示例代码 添加备注

执行用时: 0 ms , 在所有 Go 提交中击败了 100.00% 的用户 内存消耗: 1.9 MB , 在所有 Go 提交中击败了 100.00% 的用户 通过测试用例: 551 / 551

本文由 mdnice 多平台发布

你可能感兴趣的:(后端)