思路:i表示字符的ASCII码值,cntp[i]表示字符出现的次数。
AC代码
class Solution { public: int FirstNotRepeatingChar(string str) { int n = str.length(); if(n == 0) return -1; int cnt[500]; memset(cnt, 0, sizeof(cnt)); for(int i = 0; i < n; ++i) { cnt[str[i]]++; } int ans = 0; for(int i = 0; i < n; ++i) { if(cnt[str[i]] == 1) { ans = i; break; } } return ans; } };
如有不当之处欢迎指出!