連結串列

AQS同步元件--Semaphore

Semaphore 什麼是Semaphore? 是用於控制某個資源同一時間被執行緒訪問的個數,提供acquire()和release()方法,acquire獲取一個許可,如果沒有獲取的到就等待,rele

Leetcode第95場比賽回顧

零、背景 這週五團隊一起做了 Leetcode 第 95 場比賽。 做到第二題,我就發現很多人可能到這裡就不會了。 做第三題時,我剛開始完全沒想法,是先跳過去做第四題的,最後有想法了才把第三題幹掉的

新一代快取-Caffeine

簡介 Caffeine,是一種建立在java8基礎上的高效能快取框架。它是一種本地快取,功能類似Guava cache,可以理解為其是Guava cache的一個加強版本。 下圖是其官網給出的效能比較:

漫畫:什麼是LRU演算法?

—————  兩個月前  ————— 使用者資訊當然是存在資料庫裡。但是由於我們對使用者系統的效

JDK 原始碼分析:HashMap(一)

概述 HashMap 是 Java 開發中最常用的容器類之一,也是面試的常客。 它其實就是前文「 資料結構與演算法筆記(二) 」中 「散列表」的實現,處理雜湊衝突用的是“連結串列法”,並且在 JDK 1.

Java學習之Map集合

微信圖片_20190423212719.jpg Map 是一個介面,沒有繼承Collection介面,是一種把鍵物件和值物件對映的集合,它的每一個元素都包含一對鍵物件

連結串列(上)—— LRU 快取淘汰演算法的實現

經典的連結串列應用場景就是 LRU 快取淘汰演算法。 1. 連結串列結構 陣列需要一塊連續的記憶體空間來儲存,對記憶體的要求比較高。而連結串列不需要,它通過“ 指標 ”將一組零散的記憶體塊串聯起來使用

ArrayList 和 LinkedList 原始碼分析

List 表示的就是線性表,是具有相同特性的資料元素的有限序列。它主要有兩種儲存結構,順序儲存和鏈式儲存,分別對應著 ArrayList 和 LinkedList 的實現,接下來以 jdk7 程式碼為例,對這兩

ArrayList和LinkedList的區別

1.ArrayList是基於陣列的資料結構,LinkedList是基於連結串列的資料結構。 ArrayList的構造方法中可以看出它是基於陣列實現的。 /** * Construc

1715327518.2696