zoukankan      html  css  js  c++  java
  • 63. 字符串中第一个只出现一次的字符

    思路:

    搞一个hash表,统计一下每个字母出现多少次,然后再从前先后扫描一遍,
    扫描到第一个只出现一次的字母,把这个字母返回就可以了。
    C++里面的hash表:unordered_map<>

    class Solution {
    public:
    
        char firstNotRepeatingChar(string s) {
            char res = '#';
            if(!s.size()) return res;
            unordered_map<char, int> mmp; 
            for(int i = 0; i < s.size(); i++) {
                mmp[s[i]] += 1;
            }
            for(int i = 0; i < s.size(); i++){
                if(mmp[s[i]] == 1)
                    return s[i];
            }
            return res;
    
        }
    };

    另一种写法:

    class Solution {
    public:
        char firstNotRepeatingChar(string s) {
            unordered_map<char,int> count;
            for(auto c:s) count[c]++;
            char res='#';
            for(auto c:s){
                if(count[c] == 1) 
                {
                    res = c;
                    break;
                }
            }
            return res;
     
        }
    };
    带女朋友搬家新家条件不好,累到女朋友了,让女朋友受苦了,特此明志:每天学习,明年这个时候(20190812)让女朋友住上大房子,永远年轻,永远热泪盈眶,很多人都是这样,他们都把自己当成身在梦中一样,浑浑噩噩地过日子,只有痛苦或爱或危险可以让他们重新感到这个世界的真实。
  • 相关阅读:
    MAC终端配置
    SCIENCE公布125个科学前沿问题
    【Python3】内存释放机制
    【Python3】装饰器
    【Python3】迭代器&装饰器
    【Python3】内置函数
    【Python3】高阶函数
    【Python3】匿名函数
    【Python3】递归函数
    【Python3】嵌套函数
  • 原文地址:https://www.cnblogs.com/make-big-money/p/12330786.html
Copyright © 2011-2022 走看看