387. First Unique Character in a String
Given a string s
, find the first non-repeating character in it and return its index. If it does not exist, return -1
.
Example 1:
Input: s = "leetcode" Output: 0
Example 2:
Input: s = "loveleetcode" Output: 2
Example 3:
Input: s = "aabb" Output: -1
Constraints:
1 <= s.length <= 105
s
consists of only lowercase English letters.
The solution to the above question is-
class Solution {
public:
int firstUniqChar(string s) {
int arr[26]={0};
queue<char>q;
queue<int>ans;
for(int i=0; i<s.length(); i++){
arr[s[i]-'a']++;
q.push(s[i]);
ans.push(i);
}
while(true){
if(!q.empty() && arr[q.front()-'a']>1){
q.pop();
ans.pop();
}
else{
break;
}
}
if(q.empty())return -1;
return ans.front();
}
};
0 Comments
If you have any doubts/suggestion/any query or want to improve this article, you can comment down below and let me know. Will reply to you soon.