LeetCode 266. Palindrome Permutation (回文排列)$
2024-08-31 00:25:42
Given a string, determine if a permutation of the string could form a palindrome.
For example,"code"
-> False, "aab"
-> True, "carerac"
-> True.
题目标签:Hash Table
题目给了我们一个string s,让我们判断它是不是可以变作回文。
看一下回文特性:
如果是偶数长度的回文,其中所有的char 都是偶数出现次数;
如果是奇数长度的回文,那么只可以有一个char 是奇数的出现次数。
只要把char 当作key,它的出现次数当作value 存入HashMap,之后遍历keyset 来验证出现次数就可以了。
Java Solution:
Runtime beats 29.15%
完成日期:11/05/2017
关键词:HashMap
关键点:char 当作 key,出现次数当作 value 存入
class Solution
{
public boolean canPermutePalindrome(String s)
{
HashMap<Character, Integer> map = new HashMap<>();
int oddChar = 0; if(s.length() % 2 != 0)
oddChar = 1; for(char c: s.toCharArray())
map.put(c, map.getOrDefault(c, 0) + 1); for(char c: map.keySet())
{
if(oddChar < 0)
return false; if(map.get(c) % 2 != 0)
oddChar--;
} return true;
}
}
参考资料:N/A
LeetCode 题目列表 - LeetCode Questions List
最新文章
- Nop中的Cache浅析
- Hibernate3.3用户手册摘要-1-辅助类,session
- 提高HTML5 canvas性能的几种方法
- android 开发,多个线程共用一个handler
- Android 所有颜色代码
- EMV/PBOC 解析(一) 卡片文件结构
- 教你pomeloclient包libpomelo增加cocos2d-x 3.0工程(Windows、Android、IOS平台)
- MySQL的NULL值处理
- mysql常用sql命令
- 控制结构(7) 程序计数器(PC)
- JAVA的免费天气api接口调用示例
- Set接口下的集合
- 综合数据api接口使用
- Into outfile禁用情况下另类方法拿webshell
- Oracle学习操作(5)触发器
- 每月IT摘录201805
- Leader Election 选举算法
- 7 Recursive AutoEncoder结构递归自编码器(tensorflow)不能调用GPU进行计算的问题(非机器配置,而是网络结构的问题)
- 【Asp.net入门05】第一个ASP.NET 应用程序-测试Asp.net程序
- WCF-异步调用和两种客户端形式