034 · First Unique Character in a String
algorithm
Problem
给定一个字符串 s。
请返回:s 中第一个不重复字符的下标。
这里的“不重复”指的是:这个字符在整个字符串中只出现了一次。
如果字符串里不存在这样的字符,请返回 -1。
例如:
s = "leetcode"
从左往右看:
l e e t c o d e
字符 "l" 只出现了一次,而且它是最靠前的不重复字符,所以答案是它的下标:
0
再比如:
s = "loveleetcode"
虽然 "l" 出现了两次,不符合条件;继续往后看,"v" 只出现了一次,而且是第一个满足条件的字符,所以答案是:
2
这道题只需要返回下标,不需要返回字符本身,也不需要修改原字符串。
Examples
示例 1
Input: s = "leetcode"
Output: 0
解释:"l" 在字符串中只出现一次,并且它是第一个不重复字符。
示例 2
Input: s = "loveleetcode"
Output: 2
解释:"l" 出现了两次,"o" 出现了两次,"v" 只出现一次,所以返回 "v" 的下标 2。
示例 3
Input: s = "aabb"
Output: -1
解释:"a" 和 "b" 都出现了两次,字符串中没有不重复字符。
Constraints
- \(1 \leq\)
s.length\(\leq 10^5\) s只由小写英文字母组成
Link
→ Solution