【leetcode】字符串中的第一个唯一的字符
题目要求
- 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引,如果不存在,则返回-1;
- 案例:
s = “leetcode”
返回 0.
s = “loveleetcode”
返回 2. - 注意事项:可以假定该字符串只包含小写字母
完整代码如下
/**
* 题目:字符串中第一个唯一的字符
* 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引,如果不存在,则返回-1;
* 案例:
* s = "leetcode"
* 返回 0.
* s = "loveleetcode"
* 返回 2.
* 注意事项:可以假定该字符串只包含小写字母
*
*/
public class Solution {
public static int FirstUniqChar(String s) {
int[] a = new int[26];
char[] ch = s.toCharArray();
for(int i = 0;
i < s.length();
i++) {
a[(int)(ch[i]-'a')]++;
}
for(int i = 0;
i < s.length();
i++) {
if(a[(int)(ch[i]-'a')] == 1)
return i;
}
return -1;
}
public static void main(String[] args) {System.out.println(Solution.FirstUniqChar("leetcode"));
System.out.println(Solution.FirstUniqChar("loveleetcode"));
}
}
推荐阅读
- 宽容谁
- 我要做大厨
- 增长黑客的海盗法则
- 画画吗()
- 2019-02-13——今天谈梦想()
- 远去的风筝
- 三十年后的广场舞大爷
- 叙述作文
- 20190302|20190302 复盘翻盘
- 学无止境,人生还很长