xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 16KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-05
  • 語言: 其他
  • 標簽: 多叉樹??C++??

資源簡介

分層建立一個隨機層數及子節點的多叉樹,并分層遍歷輸出,在都是奇數節點位置插入偶數節點,輸出格式為樹狀

資源截圖

代碼片段和文件信息

#include?“StdAfx.h“
#include?“MyTree.h“
#define??MAX_CENG_SIZE 10 //允許最大層數
#define??MAX_NODE_SIZE 3 //允許最大節點數
#define??MAX_BUF_SIZE 20 //允許申請最大內存空間
#define ?MAX_VALUE_SIZE 1000 //允許節點值的最大值

CMyTree::CMyTree(void)
{
m_pTreeRoot?=?NULL;
}

CMyTree::~CMyTree(void)
{
DeleteTree();
}

int?CMyTree::DeleteTree()
{
if?(!m_pTreeRoot)
return?0;
/////////////////////
//應用隊列遍歷多叉樹依次刪除
queue?queueTree;
queueTree.push(m_pTreeRoot);
CTreeNode*?pNode?=?NULL;
while?(!queueTree.empty())
{
pNode?=?queueTree.front();
queueTree.pop();
if?(pNode->IsLeaf()) //刪除葉子節點
{
if?(!pNode->IsRoot())
{
CTreeNode*?pNodeParents?=?pNode->GetParents();
pNodeParents->DeleteChildrenNode(pNode);??//首先斷開和父節點的鏈接
}
delete?pNode;
continue;
}
list*?treeNodeList?=?pNode->GetChildrenList();
list::iterator?ite;
for?(ite?=?treeNodeList->begin();?ite?!=?treeNodeList->end();?ite++)
{
queueTree.push(*ite);
}
}

m_pTreeRoot?=?NULL;
return?0;
}

int?CMyTree::CreatTree()
{
if?(m_pTreeRoot)
{
DeleteTree();
}
m_pTreeRoot?=?new?CTreeNode();


/////////////////////////////
//應用2個隊列分層創建樹
queue?queueTree1;
queue?queueTree2;
queueTree1.push(m_pTreeRoot);

srand((unsigned)time(NULL));

int?nValue?=?rand()%MAX_VALUE_SIZE;
int?nBufSize?=?rand()%MAX_BUF_SIZE;
/////////////////////////////
//根節點設置數值及申請內存
m_pTreeRoot->SetNodeValue(nValue);
m_pTreeRoot->SetBufSize(nBufSize);

int?nHeight?=?rand()%MAX_CENG_SIZE; //層數
for?(int?i?=?0;?i? {
queue?*pTempQueuePush?=?NULL;
queue?*pTempQueuePop?=?NULL;
if?(0?==?i%2)
{
pTempQueuePop?=?&queueTree1;
pTempQueuePush?=?&queueTree2;
}
else
{
pTempQueuePop?=?&queueTree2;
pTempQueuePush?=?&queueTree1;
}
while?(!pTempQueuePop->empty())
{
CTreeNode*?pTreeNode?=?pTempQueuePop->front();
pTempQueuePop->pop();

/////////////////////////////
//添加子節點
int?nChildrenNum?=?rand()%MAX_NODE_SIZE;
nChildrenNum?=?nChildrenNum?==?0???1?:?nChildrenNum;
for?(int?j?=?0;?j? {
CTreeNode*?pChildrenNode?=?new?CTreeNode();
int?nValue?=?rand()%MAX_VALUE_SIZE;
int?nBufSize?=?rand()%MAX_BUF_SIZE;
/////////////////////////////
//設置數值及申請內存
pChildrenNode->SetNodeValue(nValue);
pChildrenNode->SetBufSize(nBufSize);

pTreeNode->InsertChildrenNode(pChildrenNode);
pTempQueuePush->push(pChildrenNode); //記錄當前層的節點
}
}
}
return?0;
}


int?CMyTree::PrintTree()
{
if?(!m_pTreeRoot)
return?0;
stack?stackTree;???//?保存樹節點棧
map mapCengSize; //記錄棧中每層的節點數
int?nCengNum?=?0; //記錄當前層數
mapCengSize.insert(map::value_type(0?1));
stackTree.push(m_pTreeRoot);
while(!stackTree.empty())
{
CTreeNode*?pNode?=?stackTree.top();
stackTree.pop();
map

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????7888??2011-08-24?13:03??myTreeApp\myTreeApp\Debug\BuildLog.htm

?????文件???????5732??2011-08-18?10:14??myTreeApp\myTreeApp\MyTree.cpp

?????文件????????452??2011-08-18?10:14??myTreeApp\myTreeApp\MyTree.h

?????文件????????285??2011-08-24?13:10??myTreeApp\myTreeApp\myTreeApp.cpp

?????文件???????4759??2011-08-17?17:19??myTreeApp\myTreeApp\myTreeApp.vcproj

?????文件???????1407??2011-08-24?13:10??myTreeApp\myTreeApp\myTreeApp.vcproj.RZ-PC.RZ.user

?????文件???????1427??2011-08-17?22:15??myTreeApp\myTreeApp\myTreeApp.vcproj.WWW-C6221ACAD07.Administrator.user

?????文件???????6023??2011-08-18?10:18??myTreeApp\myTreeApp\myTree_cpp.txt

?????文件????????533??2011-08-18?10:18??myTreeApp\myTreeApp\myTree_h.txt

?????文件???????1318??2011-08-17?17:14??myTreeApp\myTreeApp\ReadMe.txt

?????文件????????296??2011-08-17?17:14??myTreeApp\myTreeApp\stdafx.cpp

?????文件????????376??2011-08-17?17:14??myTreeApp\myTreeApp\stdafx.h

?????文件???????1499??2011-08-17?17:17??myTreeApp\myTreeApp\TreeNode.cpp

?????文件???????1634??2011-08-18?10:06??myTreeApp\myTreeApp\TreeNode.h

?????文件???????1517??2011-08-18?10:18??myTreeApp\myTreeApp\TreeNode_cpp.txt

?????文件???????1779??2011-08-18?10:18??myTreeApp\myTreeApp\TreeNode_h.txt

?????文件????????892??2011-08-17?17:14??myTreeApp\myTreeApp.sln

????..A..H.?????17920??2011-08-24?13:10??myTreeApp\myTreeApp.suo

?????目錄??????????0??2011-08-24?13:10??myTreeApp\myTreeApp\Debug

?????目錄??????????0??2011-08-24?13:10??myTreeApp\myTreeApp

?????目錄??????????0??2011-08-24?13:11??myTreeApp

-----------?---------??----------?-----??----

????????????????55737????????????????????21


評論

共有 條評論