我知道檢查給定二叉樹是否是二叉搜索樹的算法。但考慮到樹不是完全駐留在同一臺機器上,而是分佈在多臺機器上,我該如何處理這種情況?在單機上,我在樹的每個節點上使用範圍檢查方法來檢查它是否爲BST。有沒有我可以閱讀的資源來處理這種數據不一定在同一個系統上的問題?二叉樹是二叉搜索樹,如果樹分佈在多臺機器上
2
A
回答
1
BST有一個屬性。這是每個孩子也將是一個BST。驗證所有機器的二叉樹,一旦你有每臺機器的BT是BST,然後得到每臺機器的BT的根節點,然後再次驗證樹,如果它是根節點的BST。
+0
好洞察!我認爲這是我正在尋找的。 – user2532344
+0
另一種方法可能是..BST inorder給你排序列表。只需在每個節點的BT處進行inorder遍歷並檢查它是否已排序,如果不是,則返回false,否則,從每臺機器獲取根節點並驗證BST。 –
相關問題
- 1. 二叉樹到二叉搜索樹(BST)
- 2. 佈局二叉搜索樹
- 3. 二叉搜索樹
- 4. 二叉搜索樹
- 5. 二叉搜索樹
- 6. 二叉搜索樹
- 7. 二叉搜索樹
- 8. 二叉搜索樹
- 9. 二叉搜索樹
- 10. 二叉搜索樹
- 11. 二叉搜索樹分析
- 12. 二叉搜索樹分析
- 13. 二叉樹中最大的二叉樹搜索樹
- 14. AVL樹上的二叉搜索樹
- 15. 這棵樹是二叉搜索樹嗎?
- 16. 樹是二叉搜索樹嗎?
- 17. 檢查二叉樹是否爲二叉搜索樹的函數?
- 18. 在二叉搜索樹
- 19. 在二叉搜索樹
- 20. 在二叉搜索樹
- 21. 如何創建二叉樹(非二叉搜索樹)
- 22. 方案二叉搜索樹
- 23. 二叉搜索樹更新
- 24. 從二叉搜索樹
- 25. 刪除二叉搜索樹
- 26. 二叉搜索樹,comparsion
- 27. 清除二叉搜索樹
- 28. 二叉搜索樹問題
- 29. 二叉搜索樹 - PrintInOrder();
- 30. 二叉搜索樹遍歷
我認爲如果您還告訴了出現這種問題的位置會更好。 –
當BST在多臺機器上拆分時,爲什麼認爲「範圍檢查方法」會成爲問題?我還沒有聽說過「範圍檢查方法」,但它聽起來像遞歸地將左右邊界傳遞給任何給定子樹的直觀方法(通過訪問每個節點來解決問題),這可以並行處理。 – Dukeling