美文网首页程序员
剑指offer----第一个只出现一次的字符

剑指offer----第一个只出现一次的字符

作者: qming_c | 来源:发表于2018-02-09 00:06 被阅读0次

题目:在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置

public class Solution {
    public int FirstNotRepeatingChar(String str) {
        char[] chars = str.toCharArray();
        int[] nums = new int['z'+1];
        for(char ch : chars){
            nums[(int)ch]++;
        }
        for(int i = 0; i < chars.length; i++){
            if(nums[(int)chars[i]] == 1){
                return (char)(i);
            }
        }
        return -1;
    }
}

思路:
维护一个数组记录所有访问的字符出现的次数,然后遍历这个数组找到第一个出现一次的字符

相关文章

网友评论

    本文标题:剑指offer----第一个只出现一次的字符

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