題目描述:
如果不考慮其他因素,直接使用的是中序遍歷,將其節點放入到乙個list中,然後針對list中的節點進行重新的定義其左子樹為null,右子樹為下乙個節點,**如下
class solution
s(root, tem);
for (int i = 0; i < tem.size() - 1; i++)
tem.get(tem.size() - 1).left = null;
tem.get(tem.size() - 1).right = null;
return tem.get(0);
}public void s(treenode root,listtem)
s(root.left, tem);
tem.add(root);
s(root.right, tem); }
}
換種思路繼續
class solution
treenode leftnode=increasingbst(root.left);
treenode rightnode=increasingbst(root.right);
treenode tmpnode =leftnode;
if(leftnode!=null)
tmpnode.right=root;
}else
root.left=null;
root.right=rightnode;
return leftnode;}}
遞增順序查詢樹
給定乙個樹,按順序重新排列樹,使樹中最左邊的結點現在是樹的根,並且每個結點沒有左子結點,只有乙個右子結點。示例 輸入 5,3,6,2,4,null,8,1,null,null,null,7,9 5 3 6 2 4 8 1 7 9輸出 1,null,2,null,3,null,4,null,5,nul...
897 遞增順序查詢樹
給定乙個樹,按中序遍歷重新排列樹,使樹中最左邊的結點現在是樹的根,並且每個結點沒有左子結點,只有乙個右子結點。示例 輸入 5,3,6,2,4,null,8,1,null,null,null,7,9 5 36 248 17 9輸出 1,null,2,null,3,null,4,null,5,null,...
897 遞增順序查詢樹
給定乙個樹,按中序遍歷重新排列樹,使樹中最左邊的結點現在是樹的根,並且每個結點沒有左子結點,只有乙個右子結點。示例 輸入 5,3,6,2,4,null,8,1,null,null,null,7,9 5 3 6 2 4 8 1 7 9 輸出 1,null,2,null,3,null,4,null,5,...