寻求最佳的算法
1. 编写一个高效率函数来找出一个字符串中第一个无重复字符.例如:”total”中的o,”teeter”中的r.要求算法效率优于O(n2).函数调用模型如下:
Public static Character FirestNoRepeated(String str);
public class firstNoRepit {
public static void main(String[] args) {
String str="dsfdghgshgfjej";
System.out.println(firstNo( str));
}
public static Character firstNo(String str){
Map <Character,Integer> map = new HashMap<Character,Integer>();
for(int i=0; i<str.length();i++){
if(map.containsKey(str.charAt(i))){
map.put(str.charAt(i), 2);
}else{
map.put(str.charAt(i), 1);
}
}
for(int i=0; i<str.length();i++){
if(map.get(str.charAt(i))==1 ){
return str.charAt(i);
}
}
return null;
}
}