题解 | #第一个只出现一次的字符#

第一个只出现一次的字符

http://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c

  1. 注意字典和字典的结合。
  2. 注意全是重复的时候最后返回-1
class Solution {
public:
    int FirstNotRepeatingChar(string str) {

        if(!str.size()){
            return 0;
        }


        map<int,char> index;
        int cha[128] = {0};

        for(int i =0; i< str.length(); i++){

            index[i] = str[i];
            cha[str[i]]++;
        }

        for(auto it=index.begin(); it!= index.end();it++){

            if(cha[it->second]==1){
                return it->first;
            }

        }

        return -1;//注意全部重复的情况下

    }
};
剑指Offer 文章被收录于专栏

剑指offer的解析结合

全部评论

相关推荐

开发转测第二人:没实习的话,两个项目吧,八股也要准备一下,这个时间点有点小晚了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务