基本信息
源码名称:二叉树和森林之间的转换
源码大小:4.45M
文件格式:.zip
开发语言:C/C++
更新时间:2020-03-17
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

#include "BinaryTree.h"
#include "Tree.h"
#include "binaryTreeToForest.h"
#include "ForestToBinaryTree.h"

#include <iostream>
#include <vector>
using namespace std;


int main()
{
	int initElement[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ,11, 12, 13, 14, 15, 16, 17, 18, 19, 20};
	BinaryTree<int> binaryTree;
	binaryTree.initialize(initElement, 20);
	binaryTree.levelOrderPrint();
	cout << endl;

	vector<unique_ptr<Tree<int> > > pTreeVector = binaryTreeToForest<int>(binaryTree);
	for (size_t i = 0; i < pTreeVector.size();   i)
	{
		pTreeVector.at(i)->levelOrderPrint();
		cout << "..............................." << endl;
	}

	vector<Tree<int> *> pForestVector;
	for (int i = 0; i < pTreeVector.size();   i)
	{
		TreeNode<int>* pTreeNode = pTreeVector.at(i)->root();
		Tree<int> *pTree = new Tree<int>(pTreeNode);
		pForestVector.push_back(pTree);
	}

	unique_ptr<BinaryTree<int> >pNode = forestToBinaryTree<int>(pForestVector);
	pNode->levelOrderPrint();

	cout << endl;

	return 0;
}