我有這樣的數據是分層的,所以我把它存儲在一棵樹中。我想爲它提供搜索功能。我必須爲此創建一個二叉樹嗎?我不想有兩千個節點。是不是有一種樹讓我既按照給定的順序存儲數據,也爲我提供了像高效搜索設置這樣的二叉樹,而且幾乎沒有開銷?搜索存儲在樹中的數據
任何其他的數據結構建議也將被讚賞。
謝謝。
編輯:
一些細節:樹是一個非常簡單的「手工製作」樹,可認爲是非常非常基本的。事情是,有成千上萬的名字和其他文本將作爲我想要搜索的數據輸入,但我不想以傳統方式遍歷節點,並且需要像二進制搜索那樣的快速搜索。
此外,重要的是,用戶必須能夠看到他已輸入的結構,而不是已排序的結構。所以我不能保持排序以支持搜索。這就是爲什麼我說我不想有兩千個節點。
爲什麼你認爲你會需要節點兩次?當你說「我把它存放在樹上」時 - 什麼樣的樹?什麼阻止你直接搜索?基本上,需要更多細節。 – 2011-02-03 12:02:19
它不一定是二叉樹。它必須是[*搜索*樹](http://en.wikipedia.org/wiki/Search_tree)。二叉樹本身不提供快速搜索。 – 2011-02-03 12:02:32