2020年12月23日每日一题,幸好是简单题,刚补完昨天的!
题目
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
示例:
s = "leetcode" 返回 0
s = "loveleetcode" 返回 2
思路
简单题,较为简单,首先遍历一次,将所有字符串对应的数字放入一个map中,然后再遍历一次,遍历所有字符串,得到第一个数量不为1的即为所求。
代码
class Solution {
public int firstUniqChar(String s) {
Map<Character, Integer> map = new HashMap<>();
char[] chars = s.toCharArray();
for (char aChar : chars) {
map.merge(aChar, 1, Integer::sum);
}
int tmp = 0;
for (char aChar : chars) {
if (map.get(aChar) == 1) {
return tmp;
}
tmp++;
}
return -1;
}
}
结果
