题目:
387. 字符串中的第一个唯一字符 - 力扣(LeetCode)
给定一个字符串 s
,找到 它的第一个不重复的字符,并返回它的索引 。如果不存在,则返回 -1
。
示例 1:
输入: s = "leetcode" 输出: 0
示例 2:
输入: s = "loveleetcode" 输出: 2
示例 3:
输入: s = "aabb" 输出: -1
提示:
1 <= s.length <= 105
s
只包含小写字母
题解:
使用一个整数型数组a[26]来保存各个字母的出现数量即可
记得使用字符-'a'来找到对应的索引即可
int firstUniqChar(char* s) {
int a[26] = {0};
int len = strlen(s);
for(int i = 0; i < len; i++) {
a[s[i] - 'a']++;
}
for(int i = 0; i < len; i++) {
if(a[s[i] - 'a'] == 1) return i;
}
return -1;
}
这是我个人的刷题记录,欢迎大家给我的博客提建议,以及如果您有好的leetcode刷题流程,希望能给我指点。
个人的github主页:gushouchuanzhi1 (Deyu Tan) · GitHub
个人的刷题记录仓库:https://github.com/gushouchuanzhi1/2023_personal_training