2124. 检查是否所有 A 都在 B 之前

题目

给你一个 由字符 'a''b' 组成的字符串 s 。如果字符串中 每个 'a' 都出现在 每个 'b' 之前,返回 true ;否则,返回 false

示例1:

1
2
3
4
5
输入:s = "aaabbb"
输出:true
解释:
'a' 位于下标 0、1 和 2 ;而 'b' 位于下标 3、4 和 5 。
因此,每个 'a' 都出现在每个 'b' 之前,所以返回 true 。

示例2:

1
2
3
4
5
输入:s = "abab"
输出:false
解释:
存在一个 'a' 位于下标 2 ,而一个 'b' 位于下标 1 。
因此,不能满足每个 'a' 都出现在每个 'b' 之前,所以返回 false 。

示例3:

1
2
3
4
输入:s = "bbb"
输出:true
解释:
不存在 'a' ,因此可以视作每个 'a' 都出现在每个 'b' 之前,所以返回 true 。

提示:

  • 1 <= s.length <= 100
  • s[i]'a''b'

解法

解法一:

Java

1
2
3
4
5
6
7
8
9
10
11
12
13
public boolean checkString(String s) {
boolean bFound = false;
for (char c : s.toCharArray()) {
if ('b' == c) {
bFound = true;
}

if (bFound && 'a' == c) {
return false;
}
}
return true;
}
0%