#38852: 解題思路


toseanlin@gmail.com (Dr. SeanXD)

學校 : 康橋雙語學校
編號 : 158065
來源 : [24.147.249.5]
最後登入時間 :
2024-10-28 09:54:40
d526. Binary Search Tree (BST) | From: [203.204.21.18] | 發表日期 : 2023-12-28 09:26

建立一個struct,裡面存目前的值和左右兩邊的資料 (如範例程式碼所示)。將資料輸入之後使用For迴圈將資料一個一個進行判斷是否是要塞到資料結構的左邊還是右邊,如果該方向已經有資料了就要判斷是要在這個資料往右還是往左放,可以使用while(true)來進行判斷,將已經存在的資料往左/右邊推一個,因為struct本身裡面的左右兩邊資料也是struct,所以會形成一個無限的迴圈狀態可以一直塞資料。將二元搜尋樹建立完之後可以使用遞迴將最一開始的struct中的資料輸出,如果有左邊的話就一直往左邊輸出,當左邊沒有資料之後再從最下面往回找有沒有要輸出的右邊,以此類推到樹狀圖最右下角。

範例程式碼

 
#40072: Re: 解題思路


toseanlin@gmail.com (Dr. SeanXD)

學校 : 康橋雙語學校
編號 : 158065
來源 : [24.147.249.5]
最後登入時間 :
2024-10-28 09:54:40
d526. Binary Search Tree (BST) | From: [220.130.163.227] | 發表日期 : 2024-04-26 13:14

新的網站!!!

 
ZeroJudge Forum