heap

    -1熱度

    1回答

    我正在爲K-Order Min-heap創建一個類。我將堆作爲列表存儲。我在執行remove_min時遇到了問題。我知道刪除最小堆的過程是: 刪除第一個元素。這是最低限度。 交換第一個元素和最後一個元素。 向下冒泡新的頂部元素,直到它滿足堆屬性。 所以我需要一個remove_min和一個輔助功能,bubbledown。我不能使用heapq,因爲它只佔二進制堆,這個類需要一個k階堆。這是我到目前爲止

    0熱度

    1回答

    所以我今天打電話給malloc(1024)只是玩堆。我大部分理解堆的結構,所以當我打印出內存中的內容時,我並不感到驚訝,看到「00000000 00000409 00000000 00000000 ....」 然而,1032字節後,我預期找到堆的最上面的塊。相反,我發現另一個塊,就好像malloc(1024)的另一個調用發生在我的第一個塊之後。 在此塊如下: 00000000 00000409 3

    0熱度

    1回答

    我做了這個應用程序,但我使用內建的數組列表來創建它。這有可能是一堆嗎? 因爲它的工作原理 https://gist.github.com/anonymous/d0e5c609045b8edbffcadd25080b45f8

    0熱度

    1回答

    如何在windows上爲任何正在運行的java應用程序執行堆轉儲? 謝謝, 哈里什

    0熱度

    1回答

    \ SG wekrbpigubwepirubgpiuwebgpiubewprigubpewirubgpiuerbp [eworihgpbiweubrpigubwerpiugbeprjgbperbpgiuwebpgiubepiugbrpiewubgpiuwebgpiubwepirgubpiweubgpwebrpigubewpigubpwei時; rubgpiuew

    1熱度

    1回答

    葉對此的解釋是有點迷惑我,葉的決心堆 「通知我們如何可以檢測堆一個節點是否爲葉若。堆中的項數至少爲n,但小於2 * n + 1,那麼帶下標n的節點就是這個二叉樹上的一個葉。 例如: VAL | 5 | 3 | 4 | 2 | ind | 0 | 1 | 2 | 3 | 所以在數組中有4個元素,當我滴入元素2時,我應該停止對嗎? 因爲從等式2 * n + 1,意思是根是2 *根+ 1並且必須小於總節

    1熱度

    2回答

    查找list<float>中的n個最小元素可以通過對列表進行排序並選擇n個最小元素來完成。但它也可以使用堆更有效地完成。我發現了F#堆的幾個實現,但沒有關於如何將它們用於此目的的示例。我的兩個絆腳石是: 1)我找不到從列表創建堆的方法。我見過的所有實現都提供了一種創建空堆的方法,並有一個insert方法。我應該創建一個空的堆並逐個插入項目嗎?這看起來很慢,這會破壞目的。 2)沒有實現有一個nLar

    0熱度

    1回答

    爲什麼O(lg n)用於堆中的extract-min?

    0熱度

    1回答

    在java程序運行JMAP顯示MaxHeapSize爲3GB,請參見下面 Heap Configuration: MinHeapFreeRatio = 40 MaxHeapFreeRatio = 70 MaxHeapSize = 3221225472 (3072.0MB) 然而,總結了各方面的能力作爲 Eden Space: capacity = 53542912 (51.0

    0熱度

    1回答

    char *test(char *arg1, char* arg2){ size_t length=strlen(arg1); char *c= malloc(length+4); for(int i=length;i>0;i--) *(c+i+4)=*(arg1)^(arg2[i%8]); *(size_t *) (c) =length; return c; } 這段代