二叉樹的序遍歷

時間限制: 1 s?空間限制: 32000 KB?題目等級 : 白銀 Silver
題目描述?Description

求一棵二叉樹的前序遍歷,中序遍歷和后序遍歷

輸入描述?Input Description

第一行一個整數n,表示這棵樹的節點個數。

接下來n行每行2個整數L和R。第i行的兩個整數Li和Ri代表編號為i的節點的左兒子編號和右兒子編號。

輸出描述?Output Description

輸出一共三行,分別為前序遍歷,中序遍歷和后序遍歷。編號之間用空格隔開。

樣例輸入?Sample Input

5

2 3

4 5

0 0

0 0

0 0

樣例輸出?Sample Output

1 2 4 5 3

4 2 5 1 3

4 5 2 3 1

數據范圍及提示?Data Size & Hint

n <= 16

代碼實現:

 1 #include<cstdio>
 2 int n,a,b,tr[60],v[60];
 3 inline void xx(int x){if(!tr[x]) return;printf("%d ",tr[x]);xx(x*2);xx(x*2+1);}
 4 inline void zx(int x){if(!tr[x]) return;zx(x*2);printf("%d ",tr[x]);zx(x*2+1);}
 5 inline void hx(int x){if(!tr[x]) return;hx(x*2);hx(x*2+1);printf("%d ",tr[x]);}
 6 int main(){
 7     scanf("%d",&n);tr[1]=v[1]=1;
 8     for(int i=1;i<=n;i++){
 9         scanf("%d%d",&a,&b);
10         tr[v[i]*2]=a;tr[v[i]*2+1]=b;
11         v[a]=v[i]*2;v[b]=v[i]*2+1;
12     }
13     xx(1);printf("\n");
14     zx(1);printf("\n");
15     hx(1);printf("\n");
16     return 0;
17 }

。。。

轉載于:https://www.cnblogs.com/J-william/p/6160319.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/255763.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/255763.shtml
英文地址,請注明出處:http://en.pswp.cn/news/255763.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

GUI登錄界面

在這次的作業中&#xff0c;我先使用單選按鈕&#xff0c;輸入框&#xff0c;復選框設計了一個簡單地登錄界面。接著我使用了MouseListener將登陸按鈕與下一個“查詢界面”連接起來。最后我使用了我們本周所學的JFrame框架與事件處理機制設計了一個簡單地界面。我所設計的登錄界…

淺談ROS操作系統及其應用趨勢

ROS操作系統是最先由斯坦福開發的開源機器人操作系統&#xff0c;目前由willowgarage公司開發和維護&#xff0c;相關的開發社區也很成熟&#xff08; http://www.ros.org &#xff0c; http://answers.ros.org, http://www.willowgarage.com), 經過幾年的發展API也逐漸穩定&a…

Raft學習傳送門

Raft官網 官方可視化動畫1 官方可視化動畫2 論文中文翻譯 論文英文地址 Paxos Made Simple論文翻譯 Raft理解 技術分享 《分布式一致性raft算法實現原理》 狀態機 MIT&#xff1a; raft實現 分布式系統學習2-Raft算法分析與實現 分布式系統MIT 6.824學習資源 知乎大神的&#…

【Python生成器與迭代器的區別】

目錄 一、迭代 二、迭代器 1&#xff09;創建迭代器——兩種方法 iter&#xff08;&#xff09;方法 利用()和range結合使用 2&#xff09;具體案例 3、生成器 4、二者的異同 1&#xff09;、共同點 2&#xff09;、不同點 a、語法上 b、用法上 一、迭代 首先理解一…

BZOJ4426 : [Nwerc2015]Better Productivity最大生產率

如果一個區間包含另一個區間&#xff0c;那么這兩個區間是否在一起的生產率是一樣的。 將所有這種包含了其他區間的區間放入數組$b$&#xff0c;其余的放入數組$c$&#xff0c;有多個相同的時候則從$b$移一個到$c$。 那么$c$里所有區間左端點遞增&#xff0c;右端點也遞增&…

[codevs1105][COJ0183][NOIP2005]過河

[codevs1105][COJ0183][NOIP2005]過河 試題描述 在河上有一座獨木橋&#xff0c;一只青蛙想沿著獨木橋從河的一側跳到另一側。在橋上有一些石子&#xff0c;青蛙很討厭踩在這些石子上。由于橋的長度和青蛙一次跳過的距離都是正整數&#xff0c;我們可以把獨木橋上青蛙可能到達的…

ABB機器人套接口通信 機器人部分

ABB機器人套接口通信 機器人部分 文章機器人部分&#xff0c;描述如何運行機器人從機程序&#xff0c;使機器人根據上位機節點發送的命令&#xff0c;執行具體運動。 ABB機器人執行3個任務。這些任務都配置為SEMISTATIC(背景程序)的任務,第三任務是正常動作任務。下文描述如…

CRM項目總結

CRM項目總結 一&#xff1a;開發背景 在公司日益擴大的過程中&#xff0c;不可避免的會伴隨著更多問題出現。 對外 &#xff1a; 如何更好的管理客戶與公司的關系&#xff1f;如何更及時的了解客戶日益發展的需求變化&#xff1f;公司的產品是否真的符合客戶需求&#xff1f;以…

【面經——《速騰聚創科技有限公司——深度學習算法工程師》】

自我介紹 實習項目 1&#xff09;項目主要應用的領域&#xff1f; 2&#xff09;難點在哪&#xff1f;——機械臂吸盤大小和目標大小之間坐標的協調 3&#xff09;難點不在于算法&#xff0c;在于數據的處理和均衡性&#xff1f;對于數據均衡方面有什么理解&#xf…

js變量和數據類型

轉載于:https://www.cnblogs.com/songyinan/p/6181421.html

offline .net3.5

1.加載虛擬光驅 2.dism.exe /online /enable-feature /featurename:netfx3 /Source:D:\sources\sxs轉載于:https://www.cnblogs.com/BillLei/p/5294082.html

(九)模板方法模式詳解(包含與類加載器不得不說的故事)

作者&#xff1a;zuoxiaolong8810&#xff08;左瀟龍&#xff09;&#xff0c;轉載請注明出處&#xff0c;特別說明&#xff1a;本博文來自博主原博客&#xff0c;為保證新博客中博文的完整性&#xff0c;特復制到此留存&#xff0c;如需轉載請注明新博客地址即可。 模板方法模…

阿里云openapi接口使用,PHP,視頻直播

1.下載sdk放入項目文件夾中 核心就是aliyun-php-sdk-core&#xff0c;它的配置文件會自動加載相應的類 2.引入文件 include_once LIB_PATH . ORG/aliyun-openapi/aliyun-php-sdk-core/Config.php; 3.配置客戶端對象,需要Access Key ID,Access Key Secret $iClientProfile Defa…

【面經——《廣州敏視數碼科技有限公司》——圖像處理算法工程師-深度學習方向】

目錄 筆試 HR面 專業面——60多分鐘 主管面 反問&#xff1a; 筆試 8道題——簡答題 1道編程 蘋果、香蕉、梨、菠蘿&#xff0c;彩色圖像如何進行分類&#xff1f;一輛帶車牌的汽車&#xff0c;圖像亮度整體呈現偏亮狀態&#xff0c;如何…

Android之網絡編程利用PHP操作MySql插入數據(四)

因為最近在更新我的項目&#xff0c;就想著把自己在項目中用到的一些的簡單的與網絡交互的方法總結一下&#xff0c;所以最近Android網絡編程方面的博文會比較多一些&#xff0c;我盡量以最簡單的方法給大家分享&#xff0c;讓大家明白易懂。如果有什么不對的地方&#xff0c;還…

RAPID 信號的互鎖和同步 WaitTestAndSet 和 TestAndSet

RAPID 信號的互鎖和同步 WaitTestAndSet 指令等待指定的持久型 BOOL 變量變成 FALSE.當變量值變為 FALSE, 該指令將設置變量為 TRUE 并繼續執行. 該持久型變量可被作為同步或者互斥時的一個 BOOL 信號量。 這個指令與 TestAndSet 有著同樣的基本功能。但是 WaitTestAnd…

【常用網址】——opencv等

opencv官網Releases - OpenCVhttps://opencv.org/releases/

(五):C++分布式實時應用框架——微服務架構的演進

C分布式實時應用框架——微服務架構的演進 技術交流合作QQ群&#xff1a;436466587 歡迎討論交流 上一篇&#xff1a;(四)&#xff1a;C分布式實時應用框架——狀態中心模塊 版權聲明:本文版權及所用技術歸屬smartguys團隊所有&#xff0c;對于抄襲&#xff0c;非經同意轉載等…

如何通過軟件項目開發來提高自身的實力。

在我們這個專業&#xff0c;大多數人都不會將軟件開發當作自己的事業&#xff0c;因為若要在這個行業上能夠立足&#xff0c;得需要一個好的基礎&#xff0c;但是由于這個東西并不是可以通過書本能夠徹底的理解和 掌握的&#xff0c;隨著時間的變化&#xff0c;我們身邊的科技也…