第一个只出现一次的字符

Posted 雪浪snowWave

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第一个只出现一次的字符相关的知识,希望对你有一定的参考价值。

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

思路:map的思想。。。存一下每个字符出现的次数,然后扫一遍map,找到值为1的返回即可

 public int FirstNotRepeatingChar(String str) {
            if(str.length()==0) return -1;
            int[] res=new int[123];
            for(int i=0;i<str.length();i++){
              res[str.charAt(i)]++;
            }
            int i=0;
            for(;i<str.length();i++){
                if(res[str.charAt(i)]==1){
                    break;
                }
            }
            return i;
    }

 

以上是关于第一个只出现一次的字符的主要内容,如果未能解决你的问题,请参考以下文章

《剑指Offer——字符串中第一个只出现一次的字符》代码

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

剑指Offer-第一个只出现一次的字符位置

C++信奥赛题目——第一个只出现一次的值

第一个只出现一次的字符

第一个只出现一次的字符