找到第一次不重复的字符

mac2025-12-13  6

问题 编写一个高效的函数用于在字符串中找到第一个不重复的字符。例如,在,“在total”中第一个不重复的字符是“o”,在“teter”中第一个不重复的字符是“r”。

public static Character remove(String str) { HashMap<Character, Integer> hashMap = new LinkedHashMap<Character, Integer>(); int i,length; Character c; length = str.length(); for(i=0;i<length;i++) { c = str.charAt(i); // 进行判断 if(hashMap.containsKey(c)) { hashMap.put(c, hashMap.get(c)+1); }else { hashMap.put(c, 1); } } // 遍历元素,找到第一个不重复并返回 for(i=0;i<length;i++) { c = str.charAt(i); if(hashMap.get(c)==1) { return c; } } return null; }
最新回复(0)