剑指offer-第五章优化时间和空间效率(在字符串中第一次出现切只出现一次的字符)
2015-08-26 21:54
483 查看
题目:在字符串中第一次出现切只出现一次的字符
思路:用HashMap来存放对应的char值和该char出现的次数。做一次变量就可以得到第一个只出现一次的字符。
Java代码:
思路:用HashMap来存放对应的char值和该char出现的次数。做一次变量就可以得到第一个只出现一次的字符。
Java代码:
import java.util.LinkedHashMap; //思路:用HashMap来存放对应的char值和该char出现的次数。做一次变量就可以得到第一个只出现一次的字符。 public class FirstNotRepeatingChar { public Character firstNotRepeating(String str){ if(str==null) return null; char[] chars=str.toCharArray(); LinkedHashMap<Character,Integer> hashMap=new LinkedHashMap<Character,Integer>(); for(char item:chars){ if(hashMap.containsKey(item)) hashMap.put(item, hashMap.get(item)+1); else hashMap.put(item, 1); } for(char key:hashMap.keySet()){ if(hashMap.get(key)==1) return key; } return null; } public static void main(String[] args){ String str = "abaccdebff"; FirstNotRepeatingChar test = new FirstNotRepeatingChar(); System.out.println(test.firstNotRepeating(str)); } }
相关文章推荐
- 一个简陋的 CSS 样式
- local variable 'xxx' referenced before assignment
- Bootstrap 轮播(Carousel)插件
- node.js开发中使用Node Supervisor实现监测文件修改并自动重启
- javascript笔记--流程控制、for、while、数据类型、js对象
- 【LeetCode】之Remove Nth Node From End of List
- jQuery autocomplete 的例子
- Qt浅谈之二十二Qt样式表
- caffe 代码大揭秘
- JQuery.UI类库AutoComplete 调用WebService进行模糊查询
- String 、 StringBuffer
- JavaScript实现页面跳转的五种方式
- 剑指offer 算法 (知识迁移能力2)
- H5危险的文件上传对话框
- html 利用 frameset 进行简单的框架布局
- (转)Qt中如何使用样式表QPalette以及相关注意事项
- js获取?后面具体参数的值
- jsonp模拟获取百度搜索相关词汇
- HTML5 meta最全使用手册
- CSS3实现开门动画