skip-lists

    3熱度

    3回答

    我最近遇到了一個搜索排序列表中的數字的算法,這是怎麼回事: 鑑於:甲骨文告訴你,如果一個給定的數字大於或小於正在搜索的數字。 從列表中的第一個元素開始。提前跳過1個元素,然後詢問oracle是否超出了要搜索的數字。 如果不是,請跳過2個元素並詢問oracle是否已經太過分了。 如果沒有跳過4個元素提前,等等.... 當你找到了導致您正在搜索的傳過來的號碼,你可以確定包含被搜索的數子區間的第一跳。

    1熱度

    1回答

    我正在開發自己的跳過列表模板類。以下是它的規格:Iterator類包含單個跳過列表的副本。頭部和尾部迭代器總是空的,尾部迭代器的尾部值設置爲TRUE。 class RandomHeight { public: RandomHeight(int maxLvl, float prob); ~RandomHeight() {} int newLevel(void

    8熱度

    2回答

    我正在閱讀有關跳過列表和MemSQL,並想知道爲什麼跳過列表不在數據庫中更廣泛使用?使用跳過列表有什麼主要缺點嗎?

    4熱度

    2回答

    我是否正確地說,如果事先知道'n'(要存儲的元素的數量),像數組一樣跳過列表可以非常有效? 跳過列表的最大級別是(log n + 1),因爲在創建跳過列表之前我需要知道最大級別,這意味着我應該知道將要存儲的元素的數量是多少。

    1熱度

    1回答

    我正在嘗試編寫一個ruby函數來確定跳過列表的平均預期搜索時間。我沒有很強的數學背景,我相信我從這個函數中得到的結果是不正確的。 n =在列表 base促進概率=分母元素的個數。即,如果4個節點的1被提升基座= 4 def lookup_eficiency(n, base) return (Math.log(n, base)*(base/2.0)) end 我怎樣表達在紅寶石的等式

    0熱度

    1回答

    我正試圖在數據庫中找到相同的登錄ID用戶。 首先,我把每一個用戶的skiplist,然後我想逐一比較。我的問題是如何獲得Skiplist的關鍵值。 的一塊我的代碼是在這裏: for lUser in userList do { string uName = lUser.name string uEmail = lUser.email string uSys = lU

    4熱度

    1回答

    我正在實現基於Java的ConcurrentSkipListMap的併發跳過列表映射,區別在於我希望列表允許重複,並且我還希望列表爲indexable(so找到列表的第N個元素需要O(lg(n))時間,而不是像標準跳過列表那樣的O(n)時間)。這些修改不會產生問題。 此外,跳躍列表的鍵是可變的。例如,如果列表元素是整數{0,4,7},那麼中間元素的鍵可以更改爲[0,7]中的任何值,而不會提示更改列

    0熱度

    2回答

    在我見過的跳過列表的大多數實現中,他們使用隨機算法來確定元素是否必須複製到上一級。 但我認爲在每個級別使用奇數索引元素在上一級有副本會給我們對數搜索的複雜性。爲什麼不使用? E.g. : 數據:1 2 3 4 5 6 7 8 9 跳躍列表: 1 -------------------- 1 -------------------- 9 1 -------- ---------- 5 9 1 ---

    0熱度

    1回答

    有沒有辦法找到某個使用 特定集合的Java應用程序。我實現了自己的併發跳過列表 ,並希望將其「替換」爲應用程序,其中使用Java集合ConcurrentSkipListSet來查看我的實現 和ConcurrentSkipListSet的性能差異。 我知道我可以對跳過列表實現(我的和Java的)進行基準測試,但是我想看看真實場景中的差異。 關於如何找到這樣的應用程序的任何想法? (*我在Java標準

    3熱度

    1回答

    所以我讀了一些關於跳過列表的內容,目前正在實施一個。 但有一件事我沒有真正到目前爲止。爲什麼跳過列表是隨機的?在所有來源中,我發現跳過列表使用隨機數字來決定該項目將插入的級別。 無法計算最佳值嗎?或者你能不能在上面的層面上插入「每第四項」?