设为首页 加入收藏

TOP

c++ 先序构建二叉树(二)
2019-08-23 00:42:07 】 浏览:117
Tags:构建
bt->getLeftNode()); 99 BinaryTree<T>::postOrderTraversal(bt->getRightNode()); 100 cout << bt->data; 101 } 102 } 103 104 template <typename T> 105 void BinaryTree<T>::levelTraversal(BinaryTreeNode<T> *bt) { 106 107 queue<BinaryTreeNode<T>*> que; 108 que.push(bt); 109 while (!que.empty()) 110 { 111 BinaryTreeNode<T>* proot = que.front(); 112 que.pop(); 113 cout << proot->data; 114 115 if (proot->lChild != NULL) 116 { 117 que.push(proot->lChild);//左孩子入队 118 } 119 if (proot->rChild != NULL) 120 { 121 que.push(proot->rChild);//右孩子入队 122 } 123 } 124 } View Code

 

第三、主程序运行

 1 #include "pch.h"
 2 #include <iostream>
 3 #include "BinaryTree.h"
 4 
 5 int main()
 6 {
 7     //场景测试2
 8     BinaryTree<int> btree;
 9     btree.PreCreateTree();//先序构建二叉树
10     cout << "先序遍历:";
11     btree.preOderTraversal(btree.root); cout << endl;//先序遍历    
12     cout << "中序遍历:";
13     btree.inOrderTraversal(btree.root); cout << endl;//中序遍历
14     cout << "后序遍历:";
15     btree.postOrderTraversal(btree.root); cout << endl;//后序遍历
16     cout << "逐层序遍历:";
17     btree.levelTraversal(btree.root);
18 
19 }
View Code

最终测试运行截图

 

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇bzoj3209: 花神的数论题(数位DP) 下一篇洛谷 P3884 [JLOI2009]二叉树问题

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目