1\2返回/3
[1,3,2]
解題思路1:(遞迴)遞迴得到左子樹的中序遍歷的vector陣列,把當前結點值新增進陣列,再遞迴得到右子樹中序遍歷的vector陣列,合併兩個vector陣列並返回。結點為null時即遍歷到最底層,直接返回空的vector陣列。
class solution
ans.push_back(root->val);
if(root->right != null)
return ans;
}};
解題思路2:(非遞迴)使用棧作為節點的儲存結構,從root節點訪問,首先把root節點壓入棧,然後遍歷棧,每次訪問棧頂節點。如果節點的左節點非空,把左節點壓入棧並把左節點標記為null,然後遍歷下乙個節點。如果左節點為空,則把當前節點放入vector陣列,棧節點pop掉,再判斷右節點,如果右節點非空,則把右節點壓入棧並把右節點標記為null,遍歷下乙個節點。
class solution
ans.push_back(cur->val);
st.pop();
if(cur->right != null)
}return ans;
}};
LintCode 等價二叉樹
題目描述 檢查兩棵二叉樹是否等價。等價的意思是說,首先兩棵二叉樹必須擁有相同的結構,並且每個對應位置上的節點上的數都相等。樣例 1 1 2 2 and 2 2 4 4 就是兩棵等價的二叉樹。1 1 2 3 and 2 3 4 4就不是等價的。做題思路 本題給出的bool型別的函式來判斷二叉樹是否等價...
lintcode 等價二叉樹
1 題目 檢查兩棵二叉樹是否等價。等價的意思是說,首先兩棵二叉樹必須擁有相同的結構,並且每個對應位置上的節點上的數都相等。樣例 1 1 2 2 and 2 2 4 4就是兩棵等價的二叉樹。1 1 2 3 and 2 3 4 4就不是等價的。2 思路 對兩課二叉樹從以下幾種情況考慮 兩個均空,true...
Lintcode 等價二叉樹
1 問題描述 檢查兩棵二叉樹是否等價。等價的意思是說,首先兩棵二叉樹必須擁有相同的結構,並且每個對應位置上的節點上的數都相等。樣例 1 1 2 2 and 2 2 4 4就是兩棵等價的二叉樹。1 1 2 3 and 2 3 4 4 2 解題思路 從根節點開始判斷兩顆樹是否相等,先判斷結構是否相等,在...