?LeetCode刷題實(shí)戰(zhàn)426:將二叉搜索樹轉(zhuǎn)化為排序的雙向鏈表


?

解題
class?Solution?{
public:
????Node* treeToDoublyList(Node* root) {
????????if(!root) return?root;
????????Node* cur = root;
????????stackstk;
????????Node* head = NULL;
????????Node* prev = NULL;
????????while(cur || !stk.empty()){
????????????if(cur){
????????????????stk.push(cur);
????????????????cur = cur->left;
????????????}else{
????????????????cur = stk.top();
????????????????stk.pop();
????????????????if(!head) head = cur;
????????????????if(prev){
????????????????????prev->right = cur;
????????????????????cur->left = prev;
????????????????}
????????????????prev = cur;
????????????????cur = cur->right;
????????????}
????????}
????????head->left = prev;
????????prev->right = head;
????????return?head;
????}
};
LeetCode1-420題匯總,希望對(duì)你有點(diǎn)幫助!
LeetCode刷題實(shí)戰(zhàn)421:數(shù)組中兩個(gè)數(shù)的最大異或值
LeetCode刷題實(shí)戰(zhàn)422:有效的單詞方塊
LeetCode刷題實(shí)戰(zhàn)423:從英文中重建數(shù)字
LeetCode刷題實(shí)戰(zhàn)424:替換后的最長重復(fù)字符
LeetCode刷題實(shí)戰(zhàn)425:單詞方塊
