美文网首页
字符串中的第一个唯一字符

字符串中的第一个唯一字符

作者: 尼小摩 | 来源:发表于2018-06-25 10:03 被阅读20次

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。

案例:

s = "leetcode"
返回 0.

s = "loveleetcode",
返回 2.

注意事项:您可以假定该字符串只包含小写字母。

解题思路:

统计字符串中各个字符的个数并保存到数组中,然后查找数组中第一个值为1的元素并返回该元素的下标。

实现代码:

class Solution {
    public int firstUniqChar(String s) {
        int[] freq = new int[26];
        
        for (int i = 0; i < s.length(); i++) {
            freq[s.charAt(i) - 'a']++;
        }
        
        for (int i = 0; i < s.length(); i++) {
            if (freq[s.charAt(i) - 'a'] == 1) {
                return i;
            }
        }
        
        return -1;
    }
}

相关文章

网友评论

      本文标题:字符串中的第一个唯一字符

      本文链接:https://www.haomeiwen.com/subject/udbeyftx.html