題目:
給定一棵二叉查詢樹和乙個新的樹節點,將節點插入到樹中。
你需要保證該樹仍然是一棵二叉查詢樹。
樣例:
給出如下一棵二叉查詢樹,在插入節點6之後這棵二叉查詢樹可以是這樣的:
2 2
/ \ / \
1 4 --> 1 4
/ / \
3 3 6
思路:
根據二叉排序樹的性質,比根節點小的結點作為左子樹,比根節點大的結點作為右子樹,通過將插入結點的值與根節點比較,將該結點插入合適位置。
具體**:
遞迴演算法:
/*** definition of treenode:
* class treenode
* }*/
class solution
};非遞迴演算法:
/*** definition of treenode:
* class treenode
* }*/
class solution
else if(node->valval)
}if(root2->val>node->val) root2->left=node;
else if(root2->valval)root2->right=node;
return root1;
}else return node;}};
感想:通過此題更加熟悉了二叉排序樹的性質。
在二叉查詢樹中插入節點
給定一棵二叉查詢樹和乙個新的樹節點,將節點插入到樹中。你需要保證該樹仍然是一棵二叉查詢樹。樣例給出如下一棵二叉查詢樹,在插入節點6之後這棵二叉查詢樹可以是這樣的 2 2 1 4 1 4 3 3 6 definition of treenode public class treenode public...
在二叉查詢樹中插入節點
描述 給定一棵二叉查詢樹和乙個新的樹節點,將節點插入到樹中。你需要保證該樹仍然是一棵二叉查詢樹。樣例 給出如下一棵二叉查詢樹,在插入節點6之後這棵二叉查詢樹可以是這樣的 2 2 1 4 1 4 3 3 6 解題思路 要在二叉查詢樹的定義,如果要新增的節點值比根節點小,則把它新增到根節點的左子樹,若要...
在二叉查詢樹中插入節點
1 問題描述 給定一棵二叉查詢樹和乙個新的樹節點,將節點插入到樹中。你需要保證該樹仍然是一棵二叉查詢樹。樣例 給出如下一棵二叉查詢樹,在插入節點6之後這棵二叉查詢樹可以是這樣的 2 2 1 4 1 4 3 3 6 2 實現思路 若當前的二叉查詢樹為空,則插入的元素為根節點,若插入的元素值小於根節點值...