如何實現乙個LRU帶詳細注釋,保證看懂

2021-09-16 13:28:23 字數 744 閱讀 4225

class lrucache 

}public lrucache(int capacity)

public int get(int key)

return -1;

}public void put(int key, int value)

if(capacity==map.size())

//如果快取沒滿,插入新節點就放入tail所指的地方

node node1=new node(key,value);

map.put(key,node1);

}//首先處理node的前驅和後繼,再處理後繼節點的前驅和前驅節點的後繼

node.next=tail;

node.pre=tail.pre;

tail.pre.next=node;//前面節點的後繼

tail.pre=node;//後繼節點的前驅

乙個簡單基於LRU連線檢測實現

在做網路應用的時候經常要處理不處於活動的連線,對於不活動的tcp連線可以通過設定keepalive來觸發socketerror來處理掉.但有更多的時候是使用ping和pong來處理.對於ping,pong這種做法的發起者有兩種情況,分別是由server或client發起.對於由伺服器發起比較損耗資源...

如何實現乙個窗體

如何實現乙個窗體 jframe 1.建乙個類窗體例如 swingui extands jframe 2.在main函式中初始化例項swingui frame new swingui frame.settitle frame.addwindowlistener listener frame.pack ...

如何實現乙個async await

async的執行原理 其實就是自動執行generator函式 暫時不考慮genertor的編譯步驟 更複雜 const getdata newpromise resolve settimeout resolve data 1000 這樣的乙個async函式 應該再1秒後列印data async fu...