def first_uniq_char(s):
c={}
for ch in s: c[ch]=c.get(ch,0)+1
for i,ch in enumerate(s):
if c[ch]==1: return i
return -1
public int firstUniqChar(String s){
Map<Character,Integer> c=new HashMap<>();
for(char ch:s.toCharArray()) c.put(ch,c.getOrDefault(ch,0)+1);
for(int i=0;i<s.length();i++)
if(c.get(s.charAt(i))==1) return i;
return -1;
}
dict.get() and getOrDefault() equivalent.
def first_uniq_char(s):
c={}
for ch in s: c[ch]=c.get(ch,0)+1
for i,ch in enumerate(s):
if c[ch]==1: return i
return -1
public int firstUniqChar(String s){
Map<Character,Integer> c=new HashMap<>();
for(char ch:s.toCharArray()) c.put(ch,c.getOrDefault(ch,0)+1);
for(int i=0;i<s.length();i++)
if(c.get(s.charAt(i))==1) return i;
return -1;
}
1. Count chars 2. Return first with count 1