美文网首页程序员
剑指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