100天iOS数据结构与算法实战 Day14 - Binary

2019-04-25  本文已影响0人  人魔七七

二叉树的周游算法

通过上述四种方式遍历二叉树的每个节点。

练习周游算法的技巧 1

周游算法练习1

思路:一般我们习惯 ,根节点-左节点-右节点,这样的模型,我们就把例如上图A的左子树当做一个块,类似一个大节点用括号圈起来,同样的右子树也这样做。然后每个块里做前中后遍历。

练习周游算法的技巧 2

周游算法练习2

前序遍历思路:每个节点从左边画线一直到底部这个线,然后按照从左到右的顺序读取节点。
结果是:A,B,D,E,C,F,G 。

周游算法练习3

中序遍历思路:每个节点从中间画线到底部这个线,然后按照从左到右的顺序读取节点。
结果是 D,B,E,A,F,C,G 。

周游算法练习4

后序遍历思路:每个节点从右边画线到底部这条线,然后从左到右的顺序读取节点。
结果是 D,E,B,F,G,C,A 。

练习周游算法的技巧 3

周游算法练习5

前序遍历思路:从每个节点左边画出一个线,然后从根结点开始转一圈,经过每个节点和树的分支,包裹这个树。经过这些短线的顺序就是结果。A,B,D,E,C,F,G 。

周游算法练习6

中序遍历思路:从每个节点底部边画出一个线,然后从根结点开始转一圈,经过每个节点和树的分支,包裹这个树。经过这些短线的顺序就是结果。D,B,E,A,F,C,G 。

周游算法练习7

后序遍历思路:从每个节点右边画出一个线,然后从根结点开始转一圈,经过每个节点和树的分支,包裹这个树。经过这些短线的顺序就是结果。D,E,B,F,G,C,A 。

延伸

Github

https://github.com/renmoqiqi/100-Days-Of-iOS-DataStructure-Algorithm

上一篇下一篇

猜你喜欢

热点阅读