Redis 鏈表和鏈表節(jié)點的 API

2018-08-02 14:36 更新

表 3-1 列出了所有用于操作鏈表和鏈表節(jié)點的 API 。


表 3-1 鏈表和鏈表節(jié)點 API

函數(shù) 作用 時間復(fù)雜度
listSetDupMethod 將給定的函數(shù)設(shè)置為鏈表的節(jié)點值復(fù)制函數(shù)。 O(1) 。
listGetDupMethod 返回鏈表當前正在使用的節(jié)點值復(fù)制函數(shù)。 復(fù)制函數(shù)可以通過鏈表的 dup 屬性直接獲得, O(1)
listSetFreeMethod 將給定的函數(shù)設(shè)置為鏈表的節(jié)點值釋放函數(shù)。 O(1) 。
listGetFree 返回鏈表當前正在使用的節(jié)點值釋放函數(shù)。 釋放函數(shù)可以通過鏈表的 free 屬性直接獲得, O(1)
listSetMatchMethod 將給定的函數(shù)設(shè)置為鏈表的節(jié)點值對比函數(shù)。 O(1)
listGetMatchMethod 返回鏈表當前正在使用的節(jié)點值對比函數(shù)。 對比函數(shù)可以通過鏈表的 match 屬性直接獲得,O(1)
listLength 返回鏈表的長度(包含了多少個節(jié)點)。 鏈表長度可以通過鏈表的 len 屬性直接獲得, O(1) 。
listFirst 返回鏈表的表頭節(jié)點。 表頭節(jié)點可以通過鏈表的 head 屬性直接獲得, O(1) 。
listLast 返回鏈表的表尾節(jié)點。 表尾節(jié)點可以通過鏈表的 tail 屬性直接獲得, O(1) 。
listPrevNode 返回給定節(jié)點的前置節(jié)點。 前置節(jié)點可以通過節(jié)點的 prev 屬性直接獲得, O(1) 。
listNextNode 返回給定節(jié)點的后置節(jié)點。 后置節(jié)點可以通過節(jié)點的 next 屬性直接獲得, O(1) 。
listNodeValue 返回給定節(jié)點目前正在保存的值。 節(jié)點值可以通過節(jié)點的 value 屬性直接獲得, O(1) 。
listCreate 創(chuàng)建一個不包含任何節(jié)點的新鏈表。 O(1)
listAddNodeHead 將一個包含給定值的新節(jié)點添加到給定鏈表的表頭。 O(1)
listAddNodeTail 將一個包含給定值的新節(jié)點添加到給定鏈表的表尾。 O(1)
listInsertNode 將一個包含給定值的新節(jié)點添加到給定節(jié)點的之前或者之后。 O(1)
listSearchKey 查找并返回鏈表中包含給定值的節(jié)點。 O(N) , N 為鏈表長度。
listIndex 返回鏈表在給定索引上的節(jié)點。 O(N) , N 為鏈表長度。
listDelNode 從鏈表中刪除給定節(jié)點。 O(1) 。
listRotate 將鏈表的表尾節(jié)點彈出,然后將被彈出的節(jié)點插入到鏈表的表頭, 成為新的表頭節(jié)點。 O(1)
listDup 復(fù)制一個給定鏈表的副本。 O(N) , N 為鏈表長度。
listRelease 釋放給定鏈表,以及鏈表中的所有節(jié)點。 O(N) , N 為鏈表長度。

|

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號