【刷题】 哈希表

哈希表

LCR 169. 招式拆解 II(有序哈希表)

某套连招动作记作仅由小写字母组成的序列 arr,其中 arr[i] 第 i 个招式的名字。请返回第一个只出现一次的招式名称,如不存在请返回空格。
示例 1:
输入:arr = “abbccdeff”
输出:‘a’
示例 2:
输入:arr = “ccdd”
输出:’ ’
限制:
0 <= arr.length <= 50000

class Solution {
public:
    char dismantlingAction(string arr) {
        vector<char> keys;
        unordered_map<char, bool> hmap;
        for(char c : arr) {
            if (hmap.find(c) == hmap.end())
                keys.push_back(c);
            hmap[c] = hmap.find(c) == hmap.end();
        }
        for (char c : keys) {
            if (hmap[c]) return c;
        }
        return ' ';
    }
};

你可能感兴趣的:(刷题,散列表,算法,数据结构)