码迷,mamicode.com
首页 > 其他好文 > 详细

(6)二叉树遍历——4

时间:2017-04-05 19:01:03      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:display   树结构   turn   color   alt   stream   tree   pre   fine   

二叉树遍历主要有3种方式:先序遍历,中序遍历,后序遍历。

 

二叉树是每个节点最多有两个子树的树结构。

二叉树可以为空,但树不能为空

二叉树中每个元素的子树都是有序的。

 

技术分享
 1 #include "iostream"
 2 #define N 7
 3 
 4 using namespace std;
 5 
 6 typedef struct node
 7 {
 8     int data;
 9     struct node *leftChild;
10     struct node *rightChild;
11 }BiTreeNode,*BiTree;
12 
13 BiTreeNode *createNode(int i)
14 {
15     BiTreeNode *q = new BiTreeNode;
16     q->leftChild  = NULL;
17     q->rightChild = NULL;
18     q->data       = i;
19     return q;
20 }
21 
22 BiTree createBiTree()
23 {
24     BiTreeNode *p[N] = {NULL};
25     int i;
26     for (i=0;i<N;i++)
27     {
28         p[i] = createNode(i+1);
29     }
30 
31     for (i=0;i<N/2;i++)
32     {
33         p[i]->leftChild = p[i*2+1];
34         p[i]->rightChild = p[i*2+2];
35     }
36 
37     return p[0];
38 }
39 
40 void preOrderTraverse(BiTree T)//先序
41 {
42     if (T)
43     {
44         cout << T->data << " ";
45         preOrderTraverse(T->leftChild);
46         preOrderTraverse(T->rightChild);
47     }
48 }
49 
50 void preOrderTraverse1(BiTree T)//中序
51 {
52     if (T)
53     {
54         preOrderTraverse1(T->leftChild);
55                 cout << T->data << " ";
56         preOrderTraverse1(T->rightChild);
57     }
58 }
59 
60 void preOrderTraverse2(BiTree T)//后序
61 {
62     if (T)
63     {
64         preOrderTraverse2(T->leftChild);
65         preOrderTraverse2(T->rightChild);
66                 cout << T->data << " ";
67     }
68 }
69 
70 
71 int main()
72 {
73     BiTree T;
74 
75     T = createBiTree();
76     
77     cout << "先序遍历:" << endl;
78     preOrderTraverse(T);
79     cout << endl << endl ;
80 
81     return 0;
82 }
View Code

 

 

 

 

 

——整理自《C/C++程序员面试宝典》

(6)二叉树遍历——4

标签:display   树结构   turn   color   alt   stream   tree   pre   fine   

原文地址:http://www.cnblogs.com/thunder-wu/p/6670066.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!