题目链接
回文排列
题目描述
注意点
- 回文串不一定是字典当中的单词
解答思路
- 因为本题中回文串不一定是字典当中的单词,所以使用Map存储每个字符出现的次数,并统计出现次数为奇数的字符的数量,如果多余1个,则不是回文排列
代码
class Solution {
public boolean canPermutePalindrome(String s) {
int odd = 0;
Map<Character, Integer> map = new HashMap<>();
for (char c : s.toCharArray()) {
map.put(c, map.getOrDefault(c, 0) + 1);
}
for (int val : map.values()) {
if (val % 2 == 1) {
odd++;
if (odd > 1) {
return false;
}
}
}
return true;
}
}
关键点
- 字符串是回文排列的规律