2017-05-17 33 views
0

我瞭解了二叉樹以及它如何使搜索非常有效。我知道數據庫支持二叉樹搜索,並且有些庫可以用來在javascript和python等語言中進行這種類型的搜索。我的問題是,是否會有一個常見的情況,您需要在前端或後端實現二叉樹搜索(您需要設置樹和節點等類)?鑑於您有可以獲取或插入數據的RESTful API,您的JavaScript或後端語言是否需要二叉樹實現?在後端或前端實現二叉樹

+0

請注意,前端樹搜索的常見用例是搜索DOM,通常使用庫或helper例程[如document.querySelector](https://developer.mozilla.org/en-美國/文檔/網絡/ API /文檔/ querySelector)。在DOM2中引入的['document.createTreeWalker'](https://developer.mozilla.org/en-US/docs/Web/API/Document/createTreeWalker)提供了一種從頭開始編寫DOM搜索的替代方案。 – traktor53

回答

1

可能不是,我不是專家,你通常會在數據庫和文件系統實現中看到更多高級樹,如B-trees

這是一個模棱兩可的問題,因爲總會有一些奇怪的問題可以真正從中受益,但是您通常希望優化數據庫以避免自己實現類似樹的事情。

編輯:通過優化數據庫以避免樹,我指的是設計,查詢優化和限制結果等內容。

您希望您的前端能夠儘可能快地響應,因此使用樹會意味着您擁有大量數據,這將不可避免地減慢您的用戶界面。您最好限制數據量併爲結果分頁;瞭解爲什麼通過用戶的眼睛想到應用程序 - 如果它不覺得它正在工作...那麼它必須被打破。