回答
一個簡單的規則是總是插入到左側的子樹中,然後切換子樹。右子樹總是比左子樹大0-1個元素,所以你總是可以插入左子樹。現在,左邊的子樹比右邊的子樹大0-1個元素,所以你想切換子樹來保持不變。在僞代碼:
insert(t,v) {
if (t == null) {
return new TreeNode(v,null,null)
} else {
left = insert(t.left,v)
right = t.right
t.left = right
t.right = left
return t
}
}
這建立了一個排序樹,OP明確要求不要做的事情。 – templatetypedef 2012-02-07 03:08:35
多數民衆贊成在排序的樹 – 2012-02-07 03:09:54
我讀到,作爲構建一棵樹(我假定是排序)從未分類的輸入。固定。 – Retief 2012-02-07 03:12:34
Tree buildTree(int[] array, int index) {
if(index > array.length) { return null; }
return new Tree(
array[index],
buildTree(array, 2 * index + 1),
buildTree(array, 2 * index + 2));
}
大部分的工作是在遞歸和索引,但它也不是太糟糕的。
- 1. C中的二叉樹插入排序
- 2. 二叉樹插入
- 3. 二叉樹不插入
- 4. 二叉樹插入根
- 5. 在二叉樹中插入
- 6. 遞歸二叉樹插入
- 7. 遞歸二叉樹插入
- 8. 插入節點二叉樹
- 9. 二叉樹插入算法
- 10. 二叉搜索樹插入
- 11. 插入二叉樹(級別順序)
- 12. 有序的二叉樹插入
- 13. 插入二進制搜索樹vs二叉樹插入
- 14. 二叉樹 - 插入到非空樹
- 15. 二次二叉樹插入段錯誤
- 16. 將排序後的數組插入到二叉查找樹中
- 17. 加入二叉樹
- 18. 二叉搜索樹。插入方法插入不正確
- 19. 插入/添加二叉樹的方法
- 20. 實現二叉搜索樹插入
- 21. 二叉搜索樹遞歸插入
- 22. 二叉樹插入指針問題
- 23. PHP二叉樹插入問題
- 24. C中的遞歸二叉樹插入
- 25. 二叉樹遞歸插入錯誤
- 26. 二叉搜索樹插入錯誤
- 27. 用於二叉樹的遞歸插入
- 28. 空二叉樹的插入值
- 29. 將節點插入二叉搜索樹
- 30. 錯誤插入在二叉搜索樹
這功課嗎? – 2012-02-07 02:54:44
沒有我們可以做的只是一些額外的工作來提高我們的技能 – 2012-02-07 03:03:38