亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Leetcode 114. Flatten Binary Tree to Linked List

2019-11-14 12:53:43
字體:
來源:轉載
供稿:網友

Given a binary tree, flatten it to a linked list in-place.

For example, Given

1 / / 2 5 / / / 3 4 6

The flattened tree should look like:

1 / 2 / 3 / 4 / 5 / 6

s思路: 1. 看起來,是先訪問中間,然后左邊,最后右邊。又是一個PRe-order. 2. 用recursive當然最簡單。左邊flatten,右邊flatten,然后讓root指向flatten后的左邊,讓flatten的左邊的尾節點指向flatten后的右邊。也就是說,在flatten過程中需要知道頭節點和尾節點的指針! 3. 由于要得到左子樹和右子樹的開頭結尾,所以需要開頭結尾指針從底層得到給上層使用,因此用reference! 4. 用iterative很有意思,用stack很麻煩,反而不用stack的morris比較方便快捷,由于是pre-order:根左右,傳統的方法,訪問了左邊還要回到根以便訪問右邊,所以必須用stack;morris則是換一個角度來看問題,把樹臨時改變一下結構:在每個root時,先找到左子樹的最右節點,然后讓這個最右節點指向右子樹的第一個節點,這就方便了,等訪問完左子樹,就直接訪問右節點! 這里寫圖片描述 z正常情況下使用morris,還需要在建立這個輔助的連接后拆除這個連接以還原樹的本來結構,但這道題就要求改變樹的結構,所以說,用morris剛剛好!

//方法1:recursive:pre-order。class Solution {public: void helper(TreeNode*& head,TreeNode*& tail) { // if(!head) return; TreeNode* h1=head->left,*h2=head->right; TreeNode* t1=NULL,*t2=NULL; helper(h1,t1); helper(h2,t2); if(!h1&&!h2){ tail=head; }else{ head->left=NULL; head->right=h1?h1:h2; if(h1) t1->right=h2; tail=h2?t2:t1; } } void flatten(TreeNode* root) { // TreeNode* tail=NULL; helper(root,tail); }};//方法2:iterative:用stack的方法很復雜。參考了網上的用o(1)的morris的方法://https://discuss.leetcode.com/topic/3995/share-my-simple-non-recursive-solution-o-1-space-complexityclass Solution {public: void flatten(TreeNode* root) { // TreeNode* cur=root; while(cur){ if(cur->left){ TreeNode* pre=cur->left; while(pre->right){ pre=pre->right; } pre->right=cur->right;//把左子樹和右子樹先連接起來,這樣就不用stack,聰明! cur->right=cur->left; cur->left=NULL; } cur=cur->right; } }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲va久久久噜噜噜| 久久中国妇女中文字幕| 欧美最猛黑人xxxx黑人猛叫黄| 国产精品福利在线观看| 日韩av电影在线免费播放| 欧美有码在线视频| 日韩福利在线播放| 欧美三级欧美成人高清www| 亚洲精品一区二区久| 日韩欧美国产高清91| 国产精品成人va在线观看| 国产丝袜一区二区三区| 亚洲激情国产精品| 国产欧美日韩中文字幕在线| 97成人精品视频在线观看| 欧洲日韩成人av| 亚洲欧美在线免费观看| 欧美国产日本在线| 成人免费网站在线观看| 欧美日韩亚洲一区二区三区| 久久久国产精彩视频美女艺术照福利| 日韩欧美在线观看| 日韩精品极品毛片系列视频| 欧美色视频日本高清在线观看| 欧美在线一级视频| 在线观看日韩www视频免费| 欧美亚州一区二区三区| 国产日韩欧美在线看| 秋霞av国产精品一区| 中文字幕综合在线| 精品一区二区三区电影| 91精品久久久久久久久久另类| 精品国内产的精品视频在线观看| 超碰97人人做人人爱少妇| 国产一区二区三区视频在线观看| 国产精品高精视频免费| 欧美精品中文字幕一区| 国产福利精品av综合导导航| 久久视频在线免费观看| 久久久99免费视频| 久久国产精品偷| 精品美女国产在线| 亚洲视频在线免费看| 久久久久久久久久久亚洲| 日韩成人在线视频| 91精品在线播放| 日韩精品电影网| 国产ts人妖一区二区三区| 久久夜色精品亚洲噜噜国产mv| 国产精品久久久一区| 91国自产精品中文字幕亚洲| 欧美国产极速在线| 国产精品激情av电影在线观看| 精品久久久久久久久久国产| 成人网在线视频| 久久久国产精品一区| 国内精品久久久久| 成人av番号网| 亚洲性无码av在线| 欧美大片在线看| 免费99精品国产自在在线| 日韩在线观看精品| 亚洲一区av在线播放| 亚洲最新av在线| 国产精品热视频| 国产成人精品优优av| 久热精品视频在线观看一区| 色爱精品视频一区| 色综合久综合久久综合久鬼88| 国产精品一区=区| 狠狠色狠狠色综合日日五| 97在线视频免费观看| 亚洲综合在线中文字幕| 亚洲欧美日韩天堂| 精品国偷自产在线视频99| 国产69精品久久久久9| 亚洲色图第一页| 美日韩精品视频免费看| 亚洲黄页网在线观看| 少妇高潮久久77777| 日本欧美爱爱爱| 日韩av手机在线看| 欧美重口另类videos人妖| 久久99久国产精品黄毛片入口| 国内精品中文字幕| 国产999精品久久久影片官网| 成人疯狂猛交xxx| 国产成人精品日本亚洲专区61| 国产精品一区二区三区毛片淫片| 久久久女人电视剧免费播放下载| 日韩免费观看网站| 亚洲精品美女久久久久| 欧美成aaa人片免费看| 亚洲精品国产拍免费91在线| 欧美高清视频在线| 亚洲视频axxx| 欧美精品在线看| 91精品国产综合久久香蕉的用户体验| 久久99亚洲热视| 国产精品福利久久久| 亚洲欧美中文字幕在线一区| 欧美日本高清一区| 午夜精品一区二区三区av| 亚洲欧洲在线观看| 日韩经典一区二区三区| 国产午夜精品全部视频在线播放| 精品电影在线观看| 国产一区av在线| 日韩激情片免费| 久久久午夜视频| 欧洲中文字幕国产精品| 狠狠躁夜夜躁人人爽天天天天97| 国产精品久久久久高潮| 国产精品免费电影| 亚洲欧美中文日韩在线| 精品一区二区三区三区| 久久久99久久精品女同性| 91理论片午午论夜理片久久| 欧美一级高清免费| 午夜精品福利视频| 欧美一级黑人aaaaaaa做受| 日韩最新av在线| 97婷婷大伊香蕉精品视频| 欧美性视频精品| 国产99久久精品一区二区 夜夜躁日日躁| 精品久久久久久久久久ntr影视| 国产一区二区三区日韩欧美| 国产乱人伦真实精品视频| 欧美日韩中文字幕| 26uuu另类亚洲欧美日本老年| 欧美国产精品va在线观看| 久久久精品美女| 精品国产一区二区三区在线观看| 国产欧美va欧美va香蕉在| 日韩中文字幕在线视频| 久久久精品欧美| 美日韩丰满少妇在线观看| 国产xxx69麻豆国语对白| 国产精品欧美日韩久久| 国产美女扒开尿口久久久| 久久影院模特热| 亚洲男人天堂视频| 精品国产一区二区三区久久| 国产精品91视频| 在线观看欧美视频| 国产婷婷97碰碰久久人人蜜臀| 国产精品av在线| 亚洲色图50p| 中文字幕久热精品在线视频| 狠狠操狠狠色综合网| 国产成人涩涩涩视频在线观看| 欧美日韩亚洲激情| 欧美中文字幕在线| 国产精品69av| 色偷偷亚洲男人天堂| 久久精品久久久久久国产 免费| 国产精品99久久久久久久久| 国产精品久久久久久久久粉嫩av| 亚洲摸下面视频| 欧美激情中文网| 成人看片人aa| 爽爽爽爽爽爽爽成人免费观看| 国内外成人免费激情在线视频| 欧美激情一区二区三区久久久|