成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

面試官:簡述 Redis 鏈表實現

存儲 Redis
Redis也提供了相關函數,給大家使用,比如鏈表的增加節點,刪除節點,等等就不用咱寫了,不然有小伙伴自己手寫寫錯了還可能搞個循環鏈表出來。

[[432725]]

寫在前面

小牛之前出了八股文背誦版系列,不少朋友問我,能不能搞個八股文精講,把面試問題講講透,于是系列就這樣誕生了。咱們第一期先聊聊Redis。

阿里面試:簡述Redis鏈表實現

鏈表,我感覺學過編程的小伙伴都知道。

但遺憾的是,我前兩天逛牛客網,有個阿里面試官問:來,講講Redis的鏈表。

額,不好意思我沒看過。。。。

為了避免這種尷尬的情形發生,我寫了這篇博文,爭取讓大家20秒能掌握和面試官談笑風生redis鏈表的能力。

首先明確一點,redis的鏈表是雙向鏈表,所以鏈表結構的節點定義極其清晰

  1. typedef struct listNode { 
  2.      
  3.     struct listNode * prev;//前置節點 
  4.      
  5.     struct listNode * next;//后置節點 
  6.      
  7.     void * value;//節點數值 
  8. } listNode; 

說實話,有這么一個結構,已經夠大家寫雙向鏈表的所有操作了。

但Redis還是比較貼心的,它在listNode這一數據結構上,又封裝了一個數據結構list,方便程序員開發調用。

  1. typedef struct list { 
  2.  
  3.     listNode * head;//鏈表頭 
  4.  
  5.     listNode * tail;//鏈表尾 
  6.  
  7.     unsigned long len;//鏈表長度 
  8.  
  9.     void *(*dup) (void *ptr); //節點值復制函數 
  10.  
  11.     void (*free) (void *ptr); //節點值釋放函數 
  12.  
  13.     void (*match)(void *ptr,void *key); //節點值對比函數 

注意,其封裝的dup,free 和match均是針對節點的函數,而不是針對整個鏈表而言的。

Redis也提供了相關函數,給大家使用,比如鏈表的增加節點,刪除節點,等等就不用咱寫了,不然有小伙伴自己手寫寫錯了還可能搞個循環鏈表出來。列幾個用的多的函數給大家參考吧。

  • lpush:向鏈表左邊增加元素
  • rpush:向鏈表右邊增加元素
  • lpop: 彈出左側第一個元素
  • rpop:彈出右側第一個元素
  • llen: 獲得鏈表長度
  • lrange:按索引范圍獲得值

參考

 

  • 《Redis源碼剖析與實戰》
  • 《Redis的設計與實現》
  • https://www.jianshu.com/p/624ed78852f7

 

責任編輯:武曉燕 來源: 后端技術小牛說
相關推薦

2024-04-09 10:40:04

2024-10-22 16:39:07

2021-01-06 05:36:25

拉鏈表數倉數據

2024-04-03 00:00:00

Redis集群代碼

2024-03-05 10:33:39

AOPSpring編程

2025-03-07 00:00:10

2024-08-22 10:39:50

@Async注解代理

2024-02-20 14:10:55

系統緩存冗余

2024-09-11 22:51:19

線程通訊Object

2020-12-09 10:29:53

SSH加密數據安全

2023-11-20 10:09:59

2022-08-11 18:27:50

面試Redis分布式鎖

2022-07-06 13:48:24

RedisSentinel機制

2024-02-28 10:14:47

Redis數據硬盤

2024-02-29 16:49:20

volatileJava并發編程

2024-01-19 14:03:59

Redis緩存系統Spring

2024-01-26 13:16:00

RabbitMQ延遲隊列docker

2025-04-08 00:00:00

@AsyncSpring異步

2024-08-29 16:30:27

2024-08-12 17:36:54

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 视频一区 国产精品 | 国产精品99免费视频 | 中文字幕在线观看一区二区 | 国产一区欧美 | 久久久久一区二区 | 男人天堂社区 | 日韩一区二区三区在线视频 | 亚洲精品在线观看网站 | 亚洲国产精品一区二区三区 | 国产亚洲精品久久19p | 91精品国产乱码久久久 | 欧美一区二区 | yeyeav| www.亚洲视频 | 欧美专区在线 | 亚洲 欧美 另类 日韩 | 成人影院av| 国产激情毛片 | 天天久久 | 日韩中文字幕在线播放 | 国产激情偷乱视频一区二区三区 | 成人一区av | 欧美亚洲国语精品一区二区 | 亚洲高清在线观看 | 日本不卡高清视频 | 日本小视频网站 | 国产成人综合在线 | 一区二区三区不卡视频 | 91日日 | jizz在线看片 | 免费一级大片 | 国产一区精品在线 | 中文字幕在线观看一区 | 日韩在线一区二区 | 羞羞的视频在线看 | 久久久久久久久毛片 | 亚洲精品永久免费 | 99视频在线免费观看 | 日产精品久久久一区二区福利 | 久草电影网 | 国产乱码精品一区二区三区中文 |