字符流中第一个不重复的字符
来源:互联网 发布:网络视听许可证 youku 编辑:程序博客网 时间:2024/06/03 16:37
题目描述
请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。
输出描述:
请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。
输出描述:
如果当前字符流没有存在出现一次的字符,返回#字符。
IDEA
每次插入一个字符,就进行判断。
用map来存储该出入的字符,list存储字符流(用于按顺序查找出第一个出现的字符)
CODE
import java.util.HashMap;import java.util.ArrayList;public class Solution { HashMap<Character,Integer> map=new HashMap<Character,Integer>(); ArrayList<Character> list=new ArrayList<Character>(); //Insert one char from stringstream public void Insert(char ch) { if(map.containsKey(ch)){ map.put(ch,map.get(ch)+1); }else{ map.put(ch,1); } list.add(ch); } //return the first appearence once char in current stringstream public char FirstAppearingOnce() { char ch='#'; for(char c:list){ if(map.get(c)==1){ ch=c; break; } } return ch; }}
0 0
- 字符流中第一个不重复的字符
- 55 - 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 【算法】字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符 java
- 字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- 字符串------字符流中第一个不重复的字符
- 【53】字符流中第一个不重复的字符
- 字符流中第一个不重复的字符
- Q55:字符流中第一个不重复的字符
- 六,iOS中的金额格式化和金额大小写转换
- Tomcat 7服务器线程模型
- 一个数据包的互联网漫游记
- SSH、SSM整合一览
- 最新产品 L1频段卫星导航射频前端低噪声放大器芯片AT2659
- 字符流中第一个不重复的字符
- Unity Texture atlas mipmaps 优化(seams thing、bleeding、camera angle、distance)
- (39)Java学习笔记——集合知识点汇总
- 手动管理quartz任务
- Android DiskLruCache缓存完全解析
- kettle部署和kettle的初次使用
- ArcGIS中使用Bundle数据
- 关于线程Thread和协程Coroutine
- 机器学习方法:回归(二):稀疏与正则约束ridge regression,Lasso