سلام .
من این دو تا الگوریتم رو دارم . ولی میخوام اگه میشه یکی توضیحشونو بده !!
من کتاب علیخانزاده رو هم گرفتم ولی فقط In-Order رو توضیح داده بود که منم از روش خوندم !! ولی این دو تارو از روش بازگشتی گفته که استادمون قبول نمیکنه واسه امتحان !!
ممنون میشم اگه کمکم کنید !!
Procedure post order (T)
1. [Initialize]
If T=Null
Then write (‘Empty tree’)
Exit
Else Top←0
P← T
2. [Traverse in post order]
Repeat thru step5 while true
3. [Descend left]
Repeat while p≠ Null
Call push (s, Top, P)
P← LPTR (P)
4. [Process a node whole left and right is traversed]
Repeat while s [Top] < 0
P← pop (s, Top)
Write (data (P))
If Top = 0
Then Exit
5. [Branch right, and then mark node]
P← RPTR (s[Top])
S [Top] ← - S [Top]
------------------------------------------------
Procedure preorder (T)
1. [Initialize]
If T=Null
Then write (‘Empty tree’)
Exit
Else Top←0
Call Push(s, Top, T)
2. [Process each stacked address]
Repeat thru step3 while Top>0
3. [Get stored address and branch Right]
p← Pop(s, Top)
Repeat while p≠ Null
Write (data (P))
If RPTR (P) ≠Null
Then call push (s, Top, RPTR (P))
P← LPTR (P)
4. [Finished]
Exit