我看网上看了许多如何前序、中序,后序遍历元素排列顺序,发现并没有彻底的理解。然后我请教了我的同学,让我对其有了深入理解。

方法:把二叉树前序、中序,后序遍历递归算法理解了,自然就会排序。

举个递归前序遍历栗子,代码如下:

void preOrder1(BinTree *root)     //递归前序遍历 
2 {
3     if(root!=NULL)
4     {
5         cout<<root->data<<" ";
6         preOrder1(root->lchild);
7         preOrder1(root->rchild);
8     }
9 }
秒懂二叉树中的前序、中序,后序遍历元素排列顺序

那么它是如何进行前序遍历的?

当然要跟着代码走(关键是理解递归!)如图:

秒懂二叉树中的前序、中序,后序遍历元素排列顺序

注意:1、凡是子孩子为空,就会返回给父节点。

2、当G遍历完时,先返回B,B的右孩子为空,然后返回到A。

中序,后续同理。

相关文章:

  • 2021-07-28
  • 2021-04-03
  • 2022-02-07
  • 2021-08-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-25
  • 2021-12-25
  • 2021-08-07
  • 2022-01-17
  • 2021-08-10
  • 2021-12-08
相关资源
相似解决方案