作爲學習練習,我剛剛嘗試實現我自己的「合併排序」算法。我在一個std :: list上做了這個,它顯然已經內置了函數sort()和merge()。但是,我打算把它移到我自己製作的鏈表上,所以實現不是特別重要。排序的雙鏈表的搜索算法
問題在於,std :: list沒有訪問隨機節點的功能,只能訪問前臺/後臺並單步執行。我原本計劃以某種方式在這個列表中執行簡單的二進制搜索,並在幾個步驟中找到我的答案。
事實上,在std :: list中已經內置函數來執行這些類型的排序,這讓我相信有一種同樣簡單的方法來以我想要的方式訪問列表。
無論如何,感謝您的幫助提前!
鏈接列表非常適合快速插入元素,但排序和搜索,不是很多。因此,如果您應該在使用鏈接列表時第一次以正確的順序插入元素。 – mpen 2010-03-16 04:59:21