其他分享
首页 > 其他分享> > 给定一个字符串,找到第一个只出现一次的字符的下标,找不到输出-1。

给定一个字符串,找到第一个只出现一次的字符的下标,找不到输出-1。

作者:互联网

思路:

1,利用map记录每个字符出现的次数

2,遍历字符数组,找到第一次出现次数为1的字符

3,时间复杂度为O(n)

 

代码:

 private static void getCharIndex(String str) {
        Map<Character,Integer> charactCountMap = new HashMap<>();
        char[] chars = str.toCharArray();
        for (char c : chars) {
            Integer count = charactCountMap.get(c);
            if(count == null){
                count = 0;
            }
            count++;
            charactCountMap.put(c,count);
        }

        for (char aChar : chars) {
            Integer count = charactCountMap.get(aChar);
            if(count == 1){
                System.out.println("char:"+aChar);
                return;
            }
        }
    }

 

标签:count,字符,下标,chars,char,charactCountMap,给定,字符串,aChar
来源: https://www.cnblogs.com/dongma/p/14199860.html