国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

146. LRU Cache

2019-11-08 03:20:39
字體:
來源:轉載
供稿:網友

模擬題,思路簡單,但是難是難在對c++ 的用法!!!要好好學習!!! 2刷還要解決超時問題和自己寫一次!

class LRUCache{PRivate: typedef pair<int,list<int>::iterator> PILI; int capacity; map<int,PILI> datas; list<int> s;public: LRUCache(int capacity) { this->capacity=capacity; } int get(int key) { auto iter=datas.find(key); if(iter!=datas.end()) { update(iter); return iter->second.first; } else return -1; } void set(int key, int value) { int length=datas.size(); auto iter=datas.find(key); if(iter!=datas.end()) { iter->second.first=value; update(iter); } else { if(length>=capacity) { datas.erase(s.back()); s.pop_back(); } s.push_front(key); datas[key]=PILI(value,s.begin()); } } private: void update(map<int,PILI>::iterator iter) { int key=iter->first; s.erase(iter->second.second); s.push_front(key); iter->second.second=s.begin(); }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 卢湾区| 陆丰市| 柯坪县| 阿克| 南安市| 怀仁县| 湘阴县| 建湖县| 民权县| 墨江| 榆树市| 长武县| 格尔木市| 三河市| 岳普湖县| 富平县| 河津市| 潞西市| 五指山市| 平度市| 冀州市| 渑池县| 城市| 土默特左旗| 郸城县| 海丰县| 黔江区| 邵东县| 都匀市| 江永县| 新化县| 农安县| 黔南| 江津市| 滁州市| 萨嘎县| 垦利县| 静乐县| 潮州市| 富阳市| 军事|