11 二叉查詢樹中搜尋區間

2022-05-12 02:48:08 字數 763 閱讀 3031

原題**:

給定兩個值 k1 和 k2(k1 < k2)和乙個二叉查詢樹的根節點。找到樹中所有值在 k1 到 k2 範圍內的節點。即列印所有x (k1 <= x <= k2) 其中 x 是二叉查詢樹的中的節點值。返回所有公升序的節點值。

您在真實的面試中是否遇到過這個題? 

yes樣例如果有 k1 =10和 k2 =22, 你的程式應該返回[12, 20, 22].

20

/ \

8 22

/ \4 12

標籤

二叉樹二叉查詢樹

思路:中序遍歷基礎上加入判斷條件,如果節點值在k1~k2之間則插入結果陣列。

ac**:

/*

* * definition of treenode:

* class treenode

* } */

class

solution

return

re; }

void inordertra(treenode * root,vector &result,int k1,int

k2)

if (root->val>=k1&&root->val<=k2)

if (root->right!=null)

}};

11 二叉查詢樹中搜尋區間

給定兩個值 k1 和 k2 k1 k2 和乙個二叉查詢樹的根節點。找到樹中所有值在 k1 到 k2 範圍內的節點。即列印所有x k1 x k2 其中 x 是二叉查詢樹的中的節點值。返回所有公升序的節點值。樣例如果有 k1 10和 k2 22,你的程式應該返回 12,20,22 20 8 22 4 1...

二叉排序樹 11 二叉查詢樹中搜尋區間

給定兩個值 k1 和 k2 k1 k2 和乙個二叉查詢樹的根節點。找到樹中所有值在 k1 到 k2 範圍內的節點。即列印所有x k1 x k2 其中 x 是二叉查詢樹的中的節點值。返回所有公升序的節點值。您在真實的面試中是否遇到過這個題?yes 樣例如果有 k1 10和 k2 22,你的程式應該返回...

二叉查詢樹中搜尋區間

給定兩個值 k1 和 k2 k1 k2 和乙個二叉查詢樹的根節點。找到樹中所有值在 k1 到 k2 範圍內的節點。即列印所有x k1 x k2 其中 x 是二叉查詢樹的中的節點值。返回所有公升序的節點值。如果有 k1 10和 k2 22,你的程式應該返回 12,20,22 20 8 22 4 12 ...