leetcode First Unique Character in a String
阿新 • • 發佈:2018-12-25
First Unique Character in a String
不重複的字元第一次出現的位置的索引
解題:建立map,建立每一個字元出現的次數,第一個字元次數是1的返回。
public static void main(String[] args) { // String s="leetcode"; String s="loveleetcode"; int num = firstUniqChar(s); System.out.println(num); } public static int firstUniqChar(String s) { if(s==null || s.length()==0){ return -1; } Map<Character, Integer> characterIntegerMap = changeCanConstructChangeMap(s); for(int i=0;i<s.length();i++){ char c = s.charAt(i); Integer integer = characterIntegerMap.get(c); if(integer==1){ return i; } } return -1; } public static Map<Character,Integer> changeCanConstructChangeMap(String ransomNote){ Map<Character,Integer> map=new HashMap<>(); for(int i=0;i<ransomNote.length();i++){ char c = ransomNote.charAt(i); if(map.containsKey(c)){ map.put(c,map.get(c)+1); }else{ map.put(c,1); } } return map; }