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

最新文章

  1. Nop中的Cache浅析
  2. Hibernate3.3用户手册摘要-1-辅助类,session
  3. 提高HTML5 canvas性能的几种方法
  4. android 开发,多个线程共用一个handler
  5. Android 所有颜色代码
  6. EMV/PBOC 解析(一) 卡片文件结构
  7. 教你pomeloclient包libpomelo增加cocos2d-x 3.0工程(Windows、Android、IOS平台)
  8. MySQL的NULL值处理
  9. mysql常用sql命令
  10. 控制结构(7) 程序计数器(PC)
  11. JAVA的免费天气api接口调用示例
  12. Set接口下的集合
  13. 综合数据api接口使用
  14. Into outfile禁用情况下另类方法拿webshell
  15. Oracle学习操作(5)触发器
  16. 每月IT摘录201805
  17. Leader Election 选举算法
  18. 7 Recursive AutoEncoder结构递归自编码器(tensorflow)不能调用GPU进行计算的问题(非机器配置,而是网络结构的问题)
  19. 【Asp.net入门05】第一个ASP.NET 应用程序-测试Asp.net程序
  20. WCF-异步调用和两种客户端形式

热门文章

  1. C语言调用Python
  2. [leetcode]Add Two Numbers——JS实现
  3. Bootstrap Datatable 简单的基本配置
  4. 浅谈GFC
  5. 18SVN进行版本控制
  6. 【INSERT】逐行提交、批量提交及极限提速方法
  7. 数据结构与算法(3)- C++ STL与java se中的vector
  8. 搜索--P1219 N皇后
  9. Luogu P3110 [USACO14DEC]驮运Piggy Back
  10. [Luogu] P1993 小K的农场