import java.util.HashSet;
import java.util.Set;
// 1704. Determine if String Halves Are Alike
class Solution {
public boolean halvesAreAlike(String s) {
Set<Character> vowels = new HashSet<>();
vowels.add('a');
vowels.add('e');
vowels.add('i');
vowels.add('o');
vowels.add('u');
vowels.add('A');
vowels.add('E');
vowels.add('I');
vowels.add('O');
vowels.add('U');
int len = s.length();
int leftVowels = 0;
for (int i = 0; i < len / 2; ++i) {
if (vowels.contains(s.charAt(i))) {
++leftVowels;
}
}
int rightVowels = 0;
for (int i = len / 2; i < len; ++i) {
if (vowels.contains(s.charAt(i))) {
++rightVowels;
}
}
return leftVowels == rightVowels;
}
}
学习笔记:
这是一道字符串的简单题,用到的是哈希表。