第十周课件随笔

大学的学习已经过去了一个学期,曾经以为度过了高中就不再迷茫了,到现在才知道,原来迷茫部分时段更不分年龄。

无意中听到段老说:迷茫但行动得跟上。我觉得这句话太对了,很多人迷茫着迷茫着就无所事事,等到想努力的时候却发现缺失的太多了,想补的时候堆积的知识已经如一座泰山了……

 

下面是我今天的学习随笔与大家分享一下:

 

—— 树

简单介绍一下,今天分享的是二叉树的遍历。

分别有 先序,中序和后序

 

/*先序遍历*/
void PreOrder(BiTree root)
{
  if(root!=null)
  {
    visit(root->data);  //访问根节点
    preorder(root->lchild); 
    preorder(root->rchild);
  }
}
代码理解——如果根节点不为空,那就访问根节点,然后遍历”左孩子““右孩子”,再以左孩子作为根节点做递归。
 
/*中序遍历*/
void inorder(bitree root)
{
  if(root!=null)
  {
    inorder(root->lchild);
    visit(root->data);
    inorder(root->rchild);
  }
}
代码理解——如果根节点不为就空遍历“左孩子”再访问根节点最后遍历“右孩子“ 再以之前的“左孩子”为根节点做递归。
 
/*后序遍历*/
void postorder(bitree root)
{
  if(root!=null)
  {
    postorder(root->lchild);
    postorder(root->rchild);
    postorder(root->data);
  }
}
代码理解——判断节点是否为空,不为空便执行条件判断,遍历“左孩子”“右孩子”最后访问根节点,再以”左孩子“为根节点做递归。
 
总结 先、中、后序遍历,都是围绕着根节点,先序根节点在最前,中序根节点在中间,后序根节点在最后。
这里解释一下,二叉树遍历是从上到下从左到右。
好了,本周的随笔到这里也结束了,希望可以带给大家帮助。
 
 
posted @ 2020-04-29 23:15  给我吧唧一口  阅读(81)  评论(0编辑  收藏  举报