国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

使用三劍客做網(wǎng)站柳州網(wǎng)站建設(shè)哪里有

使用三劍客做網(wǎng)站,柳州網(wǎng)站建設(shè)哪里有,心連網(wǎng)網(wǎng)站,狼人在線觀看視頻人在線一、題目 設(shè)計(jì)LRU(最近最少使用)緩存結(jié)構(gòu),該結(jié)構(gòu)在構(gòu)造時(shí)確定大小,假設(shè)大小為 capacity ,操作次數(shù)是 n ,并有如下功能: Solution(int capacity) 以正整數(shù)作為容量 capacity 初始化 LRU 緩存get(key):如果關(guān)鍵字 key …

一、題目

設(shè)計(jì)LRU(最近最少使用)緩存結(jié)構(gòu),該結(jié)構(gòu)在構(gòu)造時(shí)確定大小,假設(shè)大小為 capacity ,操作次數(shù)是 n ,并有如下功能:

  1. Solution(int capacity) 以正整數(shù)作為容量 capacity 初始化 LRU 緩存
  2. get(key):如果關(guān)鍵字 key 存在于緩存中,則返回key對(duì)應(yīng)的value值,否則返回 -1 。
  3. set(key, value):將記錄(key, value)插入該結(jié)構(gòu),如果關(guān)鍵字 key 已經(jīng)存在,則變更其數(shù)據(jù)值 value,如果不存在,則向緩存中插入該組 key-value ,如果key-value的數(shù)量超過capacity,彈出最久未使用的key-value
    提示:
    1.某個(gè)key的set或get操作一旦發(fā)生,則認(rèn)為這個(gè)key的記錄成了最常使用的,然后都會(huì)刷新緩存。
    2.當(dāng)緩存的大小超過capacity時(shí),移除最不經(jīng)常使用的記錄。
    3.返回的value都以字符串形式表達(dá),如果是set,則會(huì)輸出"null"來表示(不需要用戶返回,系統(tǒng)會(huì)自動(dòng)輸出),方便觀察
    4.函數(shù)set和get必須以O(shè)(1)的方式運(yùn)行
    5.為了方便區(qū)分緩存里key與value,下面說明的緩存里key用""號(hào)包裹
    數(shù)據(jù)范圍:略
    示例:

[“set”,“set”,“get”,“set”,“get”,“set”,“get”,“get”,“get”],[[1,1],[2,2],[1],[3,3],[2],[4,4],[1],[3],[4]],2
[“null”,“null”,“1”,“null”,“-1”,“null”,“-1”,“3”,“4”]

二、思路

  • 看上去很復(fù)雜,實(shí)際上只要考慮好結(jié)構(gòu)就行了??梢钥吹絪et和get都需要O(1)的復(fù)雜度,所以需要一個(gè)哈希結(jié)果。
  • 其次,有一個(gè)自動(dòng)移除最近不活躍節(jié)點(diǎn)的機(jī)制,那么就得考慮結(jié)果有序,鏈表或棧之類。
  • 合在一起,就有一個(gè)很合適的數(shù)據(jù)結(jié)構(gòu)了。LinkedHashMap。

三、代碼

public class Solution {Map<Integer,Integer> map;private int capacity;public Solution(int capacity) {// write code heremap = new LinkedHashMap<>(capacity);this.capacity = capacity;}public int get(int key) {// write code hereInteger resultValue = map.get(key);if(resultValue == null){return -1;}else {//將該key存入最后map.remove(key);map.put(key,resultValue);return resultValue;}}public void set(int key, int value) {// write code here//是否存在keyif(map.containsKey(key)){map.remove(key);map.put(key,value);}else{map.put(key, value);}//然后判斷是否溢出if(capacity < map.size()){Integer firstKey = map.keySet().iterator().next();map.remove(firstKey);}}}
http://aloenet.com.cn/news/39079.html

相關(guān)文章:

  • 做鋼絲繩外貿(mào)的網(wǎng)站免費(fèi)拓客軟件哪個(gè)好用
  • 個(gè)人可以做慈善網(wǎng)站嗎關(guān)聯(lián)詞有哪些關(guān)系
  • 知名網(wǎng)站建設(shè)企業(yè)nba湖人最新新聞
  • 網(wǎng)站設(shè)計(jì) 韓國(guó)關(guān)鍵詞排名優(yōu)化公司哪家好
  • 網(wǎng)站建設(shè)公司怎么盈利高明公司搜索seo
  • 做介紹美食網(wǎng)站的菜單的傳媒網(wǎng)站
  • 阿里云做電影網(wǎng)站嗎常用的關(guān)鍵詞挖掘工具
  • 郴州seo排名搜外網(wǎng) seo教程
  • 網(wǎng)站空間500m是什么百度 指數(shù)
  • 如何申請(qǐng)免費(fèi)的網(wǎng)站空間優(yōu)化營(yíng)商環(huán)境的意義
  • 重慶做網(wǎng)站公司有哪些產(chǎn)品推廣方案怎么寫
  • 北京南昌企業(yè)網(wǎng)站制作創(chuàng)建網(wǎng)站需要什么條件
  • 上海網(wǎng)站推廣服務(wù)公司網(wǎng)絡(luò)推廣電話銷售技巧和話術(shù)
  • 個(gè)人網(wǎng)站的色彩設(shè)計(jì)怎么做香港服務(wù)器
  • 手機(jī)端企業(yè)網(wǎng)站模板新聞稿范文300字
  • 江蘇省建設(shè)廳網(wǎng)站建造師欄網(wǎng)絡(luò)推廣圖片
  • 網(wǎng)頁(yè)設(shè)計(jì)與制作視頻seo網(wǎng)絡(luò)推廣優(yōu)勢(shì)
  • 安平誰(shuí)做網(wǎng)站好如何推廣自己的業(yè)務(wù)
  • 網(wǎng)站開發(fā) 方案搜索引擎優(yōu)化課程總結(jié)
  • 網(wǎng)站鏈接的常見形式如何把品牌推廣出去
  • 備案網(wǎng)站的黑名單完整的品牌推廣方案
  • 開源企業(yè)網(wǎng)站建設(shè)系統(tǒng)seo網(wǎng)站優(yōu)化教程
  • 公眾號(hào)和網(wǎng)站先做哪個(gè)廣告投放平臺(tái)
  • 建設(shè)網(wǎng)站需要的軟硬件重慶公司seo
  • 南昌做網(wǎng)站優(yōu)化價(jià)格愛站工具包官網(wǎng)下載
  • 網(wǎng)站開發(fā)學(xué)什么編程語(yǔ)言怎么開網(wǎng)店
  • 游戲代理300元一天網(wǎng)絡(luò)seo是什么意思
  • 深圳市南山區(qū)住房和建設(shè)局官方網(wǎng)站抖音seo排名優(yōu)化公司
  • 做請(qǐng)?zhí)W(wǎng)站b站推廣app大全
  • 上饒商城網(wǎng)站建設(shè)百度識(shí)圖在線使用