Given a string, find the first non-repeating character in it and return it's index. If it doesn't exist, return -1.
Examples:
s = "leetcode"
return 0.
s = "loveleetcode",
return 2.
Note: You may assume the string contain only lowercase letters.
思路
1. use int array to simplify a hashmap
2. one pass to mark each char's occurrence
3. second pass to check 1st index whose char's occurrence == 1
代码
1 class Solution {
2 public int firstUniqChar(String s) {
3 int map [] =
new int[256
];
4 for(
int i = 0; i < s.length(); i ++
)
5 map [s.charAt(i) ] ++
;
6 for(
int i = 0; i < s.length(); i ++
)
7 if(map [s.charAt(i) ] == 1
)
8 return i;
9 return -1
;
10 }
11 }
转载于:https://www.cnblogs.com/liuliu5151/p/10090777.html
相关资源:数据结构—成绩单生成器