头像

带翅膀的猫

时光荏苒,我们一直都在

《LeetCode刷题(Easy Rank):387. First Unique Character in a String》

 4周前  •   LeetCode  •     •   7  •   0

Question:

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.

Solution:

我们可以先统计字符串中每个字符的数目,再遍历字符串,同时判断遍历到的字符个数是否为1,为1则寻找到目标字符,否则返回-1。

JAVAclass Solution {
    public int firstUniqChar(String s) {
        int[] count = new int[26];//用于存储每个字符的个数
        for(int i=0;i<s.length();i++){
            count[s.charAt(i)-'a']++;
        }
        for(int i=0;i<s.length();i++){
            if(count[s.charAt(i)-'a']==1){//遇到第一个只出现一次的字符,直接返回索引
                return i;
            }
        }
        return -1;
    }
}

 

上一篇:
下一篇:

 评论


 已有0条评论

    还没有任何评论,你来说两句吧!