字符串-哈希表-面試題50. 第一個只出現一次的字符

class Solution {
public:
    char firstUniqChar(string s) {
        unordered_map<char,int> mp;
        for(char c:s) mp[c]++;
        for(char c:s)
            if(mp[c]==1) return c;
        return ' ';    
    }
};

 c++中map和unordered_map的差別

map中的元素是按照二叉搜索樹存儲的,特點就是左子樹上所有節點的鍵值都小於根節點的鍵值,右子樹所有節點的鍵值都大於根節點的鍵值

適用處:對於那些有順序要求的問題,用map會更高效一些

unordered_map:

  1. 優點: 因爲內部實現了哈希表,因此其查找速度非常的快
  2. 缺點: 哈希表的建立比較耗費時間
  3. 適用處:對於查找問題,unordered_map會更加高效一些,因此遇到查找問題,常會考慮一下用unordered_map
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章