这道题可以想到先把每个字符的个数总结出来放入数组中, 再在原字符串中字符对应数组中是否为 1, 第一个为 1 的就是我们要找的,
没有则输出 - 1.
- class Solution {
- public int firstUniqChar(String s) {
- int[] t = new int[26];
- int i,j = 0;
- int flag = 0;
- char si = 0;
- int c= s.length();for(i = 0;i <= c-1;i++)
- {
- si = s.charAt(i);
- j = (int)(si-'a');
- t[j]++;
- }
- for(i = 0;i <= c-1;i++)
- {
- si = s.charAt(i);
- j = (int)(si-'a');
- if(t[j] == 1)
- {
- return i;
- }
- }
- return -1;
- }
- }
来源: http://www.bubuko.com/infodetail-3106400.html