문자열이 지정되면 문자열에서 반복되지 않는 첫 번째 문자를 찾아 인덱스를 반환합니다. 없으면 -1을 반환합니다.
https://leetcode.com/problems/first-unique-character-in-a-string/
Given a string , find the first non-repeating character in it and return its index. If it does not exist, return .s-1
Example 1:
Input: s = "leetcode"
Output: 0
Example 2:
Input: s = "loveleetcode"
Output: 2
Example 3:
Input: s = "aabb"
Output: -1
자바입니다.
class Solution {
public int firstUniqChar(String s) {
if(s.length()==1) return 0;
HashMap<Character, Integer> map = new HashMap<>();
for(int i = 0; i<s.length(); i++){
char c = s.charAt(i);
if(map.containsKey(c)){
int cnt = map.get(c)+1;
map.put(c,cnt);
}else{
map.put(c,1);
}
}
for(int i=0; i<s.length(); i++){
char c = s.charAt(i);
if(map.get(c)==1) return i;
}
return -1;
}
}