题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。 分析:这道题是2006年google的一道笔试题。
下面给我的解法,采用linkedhashmap的有序,即可实现
private void getOne(String str){
LinkedHashMap<String, Object> linked=new LinkedHashMap<String, Object>();
for (char charstr : str.toCharArray()) {
String strVal=String.valueOf(charstr);
if(linked.containsKey(strVal)){// 如果包含该key,则直接移除
linked.remove(strVal);
}else{
//如果没有则添加
linked.put(strVal, null);
}
}
for (Iterator<String> it=linked.keySet().iterator();it.hasNext();){
System.out.println(it.next());
}
}
原文地址:http://blog.csdn.net/a837199685/article/details/40266371