亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? treeprojectview.cpp

?? 數(shù)據(jù)結(jié)構(gòu)--樹的常見操作及維護(hù)算法的實(shí)現(xiàn)
?? CPP
字號(hào):
// TreeProjectView.cpp : implementation of the CTreeProjectView class
//

#include "stdafx.h"
#include "TreeProject.h"

#include "TreeProjectDoc.h"
#include "TreeProjectView.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CTreeProjectView

IMPLEMENT_DYNCREATE(CTreeProjectView, CView)

BEGIN_MESSAGE_MAP(CTreeProjectView, CView)
	//{{AFX_MSG_MAP(CTreeProjectView)
	ON_COMMAND(ID_TEST, OnTest)
	ON_COMMAND(ID_PARENT, OnParent)
	ON_COMMAND(ID_DUALTAGTREE, OnDualtagtree)
	ON_COMMAND(ID_LEFTLEVEL, OnLeftlevel)
	//}}AFX_MSG_MAP
	// Standard printing commands
	ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
	ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
	ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CTreeProjectView construction/destruction

CTreeProjectView::CTreeProjectView()
{
	m_ParTree=new ParTree<CString>(10);
	m_ParTree->array[0].setValue("a");
	m_ParTree->array[1].setValue("b");
	m_ParTree->array[2].setValue("c");
	m_ParTree->array[3].setValue("d");
	m_ParTree->array[4].setValue("e");
	m_ParTree->array[5].setValue("f");
	m_ParTree->array[6].setValue("g");
	m_ParTree->array[7].setValue("h");
	m_ParTree->array[8].setValue("i");
	m_ParTree->array[9].setValue("j");

	m_NodeArray=new DualTagTreeNode<CString>[10];
	m_NodeArray[0].info="a";
	m_NodeArray[0].ltag=0;
	m_NodeArray[0].rtag=0;
	m_NodeArray[1].info="b";
	m_NodeArray[1].ltag=1;
	m_NodeArray[1].rtag=0;
	m_NodeArray[2].info="c";
	m_NodeArray[2].ltag=0;
	m_NodeArray[2].rtag=1;
	m_NodeArray[3].info="k";
	m_NodeArray[3].ltag=1;
	m_NodeArray[3].rtag=1;
	m_NodeArray[4].info="d";
	m_NodeArray[4].ltag=0;
	m_NodeArray[4].rtag=1;
	m_NodeArray[5].info="e";
	m_NodeArray[5].ltag=0;
	m_NodeArray[5].rtag=0;
	m_NodeArray[6].info="h";
	m_NodeArray[6].ltag=1;
	m_NodeArray[6].rtag=1;
	m_NodeArray[7].info="f";
	m_NodeArray[7].ltag=0;
	m_NodeArray[7].rtag=0;
	m_NodeArray[8].info="j";
	m_NodeArray[8].ltag=1;
	m_NodeArray[8].rtag=1;
	m_NodeArray[9].info="g";
	m_NodeArray[9].ltag=1;
	m_NodeArray[9].rtag=1;

	m_LinkNodeArray=new LeftLinkTreeNode<CString>[10];
	m_LinkNodeArray[0].info="a";
	m_LinkNodeArray[0].llink=m_LinkNodeArray+2;
	m_LinkNodeArray[0].rtag=0;
	m_LinkNodeArray[1].info="d";
	m_LinkNodeArray[1].llink=m_LinkNodeArray+4;
	m_LinkNodeArray[1].rtag=1;
	m_LinkNodeArray[2].info="b";
	m_LinkNodeArray[2].llink=NULL;
	m_LinkNodeArray[2].rtag=0;
	m_LinkNodeArray[3].info="c";
	m_LinkNodeArray[3].llink=m_LinkNodeArray+7;
	m_LinkNodeArray[3].rtag=1;
	m_LinkNodeArray[4].info="e";
	m_LinkNodeArray[4].llink=m_LinkNodeArray+8;
	m_LinkNodeArray[4].rtag=0;
	m_LinkNodeArray[5].info="f";
	m_LinkNodeArray[5].llink=m_LinkNodeArray+9;
	m_LinkNodeArray[5].rtag=0;
	m_LinkNodeArray[6].info="g";
	m_LinkNodeArray[6].llink=NULL;
	m_LinkNodeArray[6].rtag=1;
	m_LinkNodeArray[7].info="k";
	m_LinkNodeArray[7].llink=NULL;
	m_LinkNodeArray[7].rtag=1;
	m_LinkNodeArray[8].info="h";
	m_LinkNodeArray[8].llink=NULL;
	m_LinkNodeArray[8].rtag=1;
	m_LinkNodeArray[9].info="j";
	m_LinkNodeArray[9].llink=NULL;
	m_LinkNodeArray[9].rtag=1;

}

CTreeProjectView::~CTreeProjectView()
{
	if(m_ParTree)
		delete m_ParTree;
	if(m_NodeArray)
		delete []m_NodeArray;
	if(m_LinkNodeArray)
		delete []m_LinkNodeArray;
	if(pTree)
		delete pTree;
	if(pTree2)
		delete pTree2;
}

BOOL CTreeProjectView::PreCreateWindow(CREATESTRUCT& cs)
{
	// TODO: Modify the Window class or styles here by modifying
	//  the CREATESTRUCT cs

	return CView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// CTreeProjectView drawing

void CTreeProjectView::OnDraw(CDC* pDC)
{
	CTreeProjectDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	// TODO: add draw code for native data here
}

/////////////////////////////////////////////////////////////////////////////
// CTreeProjectView printing

BOOL CTreeProjectView::OnPreparePrinting(CPrintInfo* pInfo)
{
	// default preparation
	return DoPreparePrinting(pInfo);
}

void CTreeProjectView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
	// TODO: add extra initialization before printing
}

void CTreeProjectView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
	// TODO: add cleanup after printing
}

/////////////////////////////////////////////////////////////////////////////
// CTreeProjectView diagnostics

#ifdef _DEBUG
void CTreeProjectView::AssertValid() const
{
	CView::AssertValid();
}

void CTreeProjectView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
}

CTreeProjectDoc* CTreeProjectView::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CTreeProjectDoc)));
	return (CTreeProjectDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CTreeProjectView message handlers

void CTreeProjectView::OnTest() 
{
	m_Tree.CreateRoot("a");

	TreeNode<CString>* pb=new TreeNode<CString>("b");

	TreeNode<CString>* pc=new TreeNode<CString>("c");
	TreeNode<CString>* pd=new TreeNode<CString>("d");
	TreeNode<CString>* pe=new TreeNode<CString>("e");
	TreeNode<CString>* pf=new TreeNode<CString>("f");
	TreeNode<CString>* pg=new TreeNode<CString>("g");
	TreeNode<CString>* pk=new TreeNode<CString>("k");
	TreeNode<CString>* pl=new TreeNode<CString>("l");
	TreeNode<CString>* ph=new TreeNode<CString>("h");
	TreeNode<CString>* pi=new TreeNode<CString>("i");
	TreeNode<CString>* pm=new TreeNode<CString>("m");
	TreeNode<CString>* pj=new TreeNode<CString>("j");
	TreeNode<CString>* pn=new TreeNode<CString>("n");

	TreeNode<CString>* px=new TreeNode<CString>("x");
	TreeNode<CString>* py=new TreeNode<CString>("y");

	m_Tree.getRoot()->InsertFirst(pb);

	pb->InsertFirst(pe);
	pb->InsertNext(pc);
	pc->InsertNext(pd);
	pe->InsertNext(pf);
	pc->InsertFirst(pg);
	pf->InsertFirst(pk);
	pk->InsertNext(pl);
	pd->InsertFirst(ph);
	ph->InsertNext(pi);
	pi->InsertFirst(pm);
	pi->InsertNext(pj);
	pm->InsertNext(pn);

	m_Tree.getRoot()->InsertNext(px);
	px->InsertNext(py);

//	MessageBox(m_Tree.Parent(pl)->Value());
//	MessageBox(m_Tree.Parent(pj)->Value());

//	m_Tree.RootFirstTraverse(m_Tree.getRoot());
//	m_Tree.RootLastTraverse(m_Tree.getRoot());
	m_Tree.WidthTraverse(m_Tree.getRoot());
//	m_Tree.WidthTraverse2(m_Tree.getRoot());


//	m_Tree.DeleteSubTree(pb);
//	m_Tree.DeleteSubTree(pc);

//	MessageBox(m_Tree.PrevSibling(pl)->Value());

//	m_Tree.RootFirstTraverse(m_Tree.getRoot());
}

void CTreeProjectView::OnParent() 
{
	m_ParTree->Union(0,1);
	m_ParTree->Union(1,2);

	m_ParTree->Union(3,4);
	m_ParTree->Union(5,6);
	m_ParTree->Union(3,6);

	m_ParTree->Union(7,8);
	m_ParTree->Union(8,9);

	bool check=m_ParTree->Different(0,2);
	check=m_ParTree->Different(1,6);
	check=m_ParTree->Different(4,9);
	check=m_ParTree->Different(8,9);
}

void CTreeProjectView::OnDualtagtree() 
{
	pTree=new Tree<CString>(m_NodeArray,10);	
	pTree->RootFirstTraverse(pTree->getRoot());
}

void CTreeProjectView::OnLeftlevel() 
{
	pTree2=new Tree<CString>(m_LinkNodeArray,10);	
	pTree2->RootFirstTraverse(pTree2->getRoot());

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产真实乱对白精彩久久| 日韩精品资源二区在线| 国产精品入口麻豆原神| 国产一区在线看| 国产网站一区二区| 成人午夜精品在线| 亚洲三级理论片| 欧美色图免费看| 奇米综合一区二区三区精品视频| 91麻豆精品国产91久久久久| 麻豆91在线看| 国产欧美日韩三级| 色美美综合视频| 天天av天天翘天天综合网| 日韩欧美高清一区| 风间由美一区二区av101| 亚洲麻豆国产自偷在线| 欧美日韩在线不卡| 国产一区二区精品久久99| 国产精品视频一区二区三区不卡| 日本福利一区二区| 麻豆精品久久久| 亚洲免费观看高清完整版在线 | 日韩三级视频中文字幕| 久久99久久久久| 日韩一区二区中文字幕| 九九精品视频在线看| 日韩网站在线看片你懂的| 欧美精品在线一区二区三区| 奇米影视一区二区三区小说| 亚洲国产精品高清| 在线视频中文字幕一区二区| 精品一区二区三区免费视频| 国产精品久久久久影院亚瑟| 在线不卡中文字幕| 成人免费av资源| 日韩电影免费一区| 日韩伦理av电影| 日韩视频在线你懂得| 91美女在线观看| 国产一区二区在线视频| 亚洲一线二线三线视频| 久久精品欧美日韩| 91精品国产欧美日韩| 色爱区综合激月婷婷| 国产一区二区0| 日韩在线卡一卡二| 亚洲色欲色欲www在线观看| 精品国产一区a| 欧美剧在线免费观看网站| 91香蕉视频黄| 国产福利一区二区三区在线视频| 日韩av不卡在线观看| 一区二区三区日本| 亚洲欧洲在线观看av| 日韩欧美电影一二三| 欧美三区在线观看| 97国产一区二区| 久久这里只精品最新地址| 色综合色狠狠天天综合色| 国产麻豆9l精品三级站| 免费久久99精品国产| 亚洲地区一二三色| 一区二区三区在线影院| 国产精品久久久久7777按摩| 久久女同精品一区二区| 日韩免费视频一区| 制服视频三区第一页精品| 色一区在线观看| 91亚洲精华国产精华精华液| 成人美女视频在线观看18| 国产在线视频不卡二| 日韩中文字幕av电影| 亚洲第一二三四区| 亚洲一级二级在线| 亚洲成av人片在www色猫咪| 亚洲一区二区三区在线| 中文字幕日韩一区| 亚洲三级在线播放| 亚洲精品亚洲人成人网| 亚洲精品视频在线看| 亚洲欧美一区二区在线观看| |精品福利一区二区三区| 最新欧美精品一区二区三区| 亚洲美腿欧美偷拍| 一级中文字幕一区二区| 性感美女极品91精品| 日本一区中文字幕 | 亚洲综合图片区| 亚洲一区二区在线免费观看视频| 一区二区三区免费| 日韩成人精品视频| 精品写真视频在线观看 | 亚洲国产色一区| 婷婷激情综合网| 久草这里只有精品视频| 国产a精品视频| 99国产精品一区| 欧美久久久久久久久| www久久精品| 国产精品第一页第二页第三页| 亚洲欧美精品午睡沙发| 日本少妇一区二区| 国产成人av资源| 在线一区二区三区四区五区 | 国产ts人妖一区二区| 91丨porny丨首页| 欧美福利视频导航| 国产午夜精品久久久久久久| 最新日韩av在线| 青青草一区二区三区| 成人高清免费观看| 欧美视频一区二区三区在线观看| 日韩精品一区二区在线观看| 国产精品国产三级国产普通话蜜臀| 亚洲一区在线免费观看| 国产一区二区三区精品欧美日韩一区二区三区| 国产精品羞羞答答xxdd| 在线免费不卡视频| 久久久国产一区二区三区四区小说 | 国产精品资源在线看| 色哟哟国产精品| 亚洲精品一区二区三区福利| 亚洲另类一区二区| 久久99久久久久久久久久久| 色诱亚洲精品久久久久久| 亚洲精品一区二区三区影院| 亚洲一区二区三区视频在线| 国产精品99久久久久| 欧美剧情片在线观看| 一区在线观看免费| 国产在线精品免费| 欧美日韩一区二区电影| 国产精品久久久久久久岛一牛影视 | 亚洲国产精品久久不卡毛片| 国产成+人+日韩+欧美+亚洲| 欧美久久一二区| 亚洲精品中文字幕乱码三区 | 成人a免费在线看| 欧美一级视频精品观看| 亚洲午夜免费视频| av午夜精品一区二区三区| 日韩免费看网站| 亚洲成人中文在线| 91在线视频18| 欧美激情一区二区三区四区 | 国产福利一区二区三区| 91精品国产丝袜白色高跟鞋| 亚洲综合在线免费观看| 99精品黄色片免费大全| 欧美国产视频在线| 国产成人免费av在线| 欧美xxxxx牲另类人与| 日韩精品一区第一页| 欧美视频精品在线| 一级日本不卡的影视| 色婷婷亚洲一区二区三区| 国产欧美日韩三级| 高清久久久久久| 久久久国产一区二区三区四区小说| 蜜桃久久av一区| 日韩欧美一级特黄在线播放| 日韩av二区在线播放| 欧美日韩免费一区二区三区| 亚洲一区二区三区视频在线| 色综合天天做天天爱| 亚洲精品亚洲人成人网| 日本久久电影网| 亚洲影院理伦片| 欧美日韩精品一区二区三区蜜桃 | 婷婷夜色潮精品综合在线| 日本韩国一区二区| 亚洲一区二区三区四区在线| 在线观看不卡一区| 亚洲18色成人| 欧美一区二区三区视频免费播放| 人人爽香蕉精品| 欧美videofree性高清杂交| 激情五月婷婷综合网| 国产亚洲成av人在线观看导航| 国产精品亚洲成人| 成人免费在线视频观看| 欧美写真视频网站| 蜜臀av一区二区在线免费观看| 2欧美一区二区三区在线观看视频| 国产美女av一区二区三区| 中文字幕欧美三区| 91久久精品日日躁夜夜躁欧美| 亚洲成a人v欧美综合天堂下载| 日韩视频在线你懂得| 国产成人免费视| 亚洲一区中文日韩| 精品福利视频一区二区三区| 丁香五精品蜜臀久久久久99网站| 亚洲欧洲精品一区二区三区| 欧美午夜精品一区二区蜜桃| 久久精品国产久精国产爱| 国产精品美女久久久久久| 欧美午夜电影网| 国产精一区二区三区|