您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ CreateTree函数代码示例

51自学网 2021-06-01 20:15:18
  C++
这篇教程C++ CreateTree函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中CreateTree函数的典型用法代码示例。如果您正苦于以下问题:C++ CreateTree函数的具体用法?C++ CreateTree怎么用?C++ CreateTree使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了CreateTree函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: CreateTree

void CreateTree( int lo, int hi, int root, bool left ) {    int pivotIndex, tmpIndex;//printf( "l:%d     h:%d/n", lo, hi);    if ( lo >= hi )        return ;    for ( int i = lo; i < hi; ++i ) {        if ( inOrder[i] == postOrder[pivotCnt] ) {            pivotIndex = i;            --pivotCnt;            break;        }    }    tmpIndex = ++fuck;    tree[tmpIndex].val         = inOrder[pivotIndex];    tree[tmpIndex].parentIndex = root;    if ( left )        tree[root].lChildIndex = tmpIndex;    else        tree[root].rChildIndex = tmpIndex;    CreateTree( pivotIndex + 1, hi, tmpIndex, true );    CreateTree( lo, pivotIndex, tmpIndex, false );    return ;}
开发者ID:psyclaudeZ,项目名称:Problems-of-Ural-and-UVa,代码行数:29,


示例2: CreateTree

	TreeNode * CreateTree(ListNode* node,int len)	{		if( len == 1)		{			TreeNode * t = new TreeNode(node->val);			t->right = t->left = NULL;			allNodes.push_back(t);			return t;		}		else		{			ListNode * cur= node;			int i = 1;			do			{				node = node->next;			}while(++i <= len/2);			TreeNode * t = new TreeNode(node->val);			t->left = CreateTree(cur,len/2);			if(len-len/2-1== 0)				t->right = NULL;			else				t->right = CreateTree(node->next,len-len/2-1);			allNodes.push_back(t);			return t;		}	}
开发者ID:qs8607a,项目名称:Algorithm-22,代码行数:29,


示例3: main

 void main() {   int i;   PTree T,p;   TElemType e,e1;   InitTree(T);   printf("构造空树后,树空否? %d(1:是 0:否) 树根为%c 树的深度为%d/n",TreeEmpty(T),Root(T),TreeDepth(T));   CreateTree(T);   printf("构造树T后,树空否? %d(1:是 0:否) 树根为%c 树的深度为%d/n",TreeEmpty(T),Root(T),TreeDepth(T));   printf("层序遍历树T:/n");   TraverseTree(T,vi);   printf("请输入待修改的结点的值 新值: ");   scanf("%c%*c%c%*c",&e,&e1);   Assign(T,e,e1);   printf("层序遍历修改后的树T:/n");   TraverseTree(T,vi);   printf("%c的双亲是%c,长子是%c,下一个兄弟是%c/n",e1,Parent(T,e1),LeftChild(T,e1),RightSibling(T,e1));   printf("建立树p:/n");   InitTree(p);   CreateTree(p);   printf("层序遍历树p:/n");   TraverseTree(p,vi);   printf("将树p插到树T中,请输入T中p的双亲结点 子树序号: ");   scanf("%c%d%*c",&e,&i);   InsertChild(T,e,i,p);   Print(T);   printf("删除树T中结点e的第i棵子树,请输入e i: ");   scanf("%c%d",&e,&i);   DeleteChild(T,e,i);   Print(T); }
开发者ID:wuzongbin2008,项目名称:c_test,代码行数:31,


示例4: if

void Properties::ParseList(QTreeWidgetItem* node, const IterableT& seq) {  typename IterableT::const_iterator it, itEnd = seq.end();  int i = 0;  // skip 1 sized arrays  if (seq.size() == 0) {    // empty    if (node)      node->setData(1, Qt::DisplayRole, "<empty>");  } else if (seq.size() == 1) {    CreateTree(node, seq.first());    if (node)      node->setData(1, Qt::DisplayRole, GetSummary("[0]", seq.first()));  } else {    for (it = seq.begin(); it != itEnd; ++it) {      QTreeWidgetItem* child = new QTreeWidgetItem();      QString key = QString("[%1]").arg(i++);      child->setData(0, Qt::DisplayRole, key);      child->setData(1, Qt::DisplayRole, GetSummary(key, *it));      CreateTree(child, *it);      if (node)        node->addChild(child);      else        ui->propertyView->addTopLevelItem(child);    }  }}
开发者ID:EtlamGit,项目名称:minutor,代码行数:27,


示例5: CreateTree

void CreateTree(Node *p) {	if (p->low_ < p->high_) {		p->left_ = new Node(p->low_, (p->low_ + p->high_) / 2);		CreateTree(p->left_);		p->right_ = new Node((p->low_ + p->high_) / 2 + 1, p->high_);		CreateTree(p->right_);	}}
开发者ID:SamJia,项目名称:Oj,代码行数:8,


示例6: CreateTree

Node* CreateTree(It begin, It end) {    if (end - begin == 0) {        return nullptr;    }    Iterator middle = begin + (end - begin) / 2; // Should I be afraid of (from < to)?    Node* root = new Node(*middle);    root->left = CreateTree(begin, middle);    root->right = CreateTree(middle + 1, end);    return root;}
开发者ID:AnyaP,项目名称:Interview-preparation,代码行数:10,


示例7: CreateTree

SearchTree CreateTree(SearchTree T) {	int temp;	scanf("%d", &temp);	if(temp == -1)		T = NULL;	else {		T = (SearchTree)malloc(sizeof(TreeNode));		T->data = temp;		T->left	= CreateTree(T->left);		T->right = CreateTree(T->right);	}	return T;}
开发者ID:SuperMardle,项目名称:DataStructure,代码行数:13,


示例8: CreateTree

//先序拓展建立二叉树void CreateTree(BiTree &T){    T = (BiNode*) malloc (sizeof(BiNode));    printf("Enter the data /n");    scanf("%c ",&T->data);    if(T->data == '#') T == NULL;    if(T)    {        printf("");        CreateTree(T->lch);        CreateTree(T->rch);    }}
开发者ID:pathbox,项目名称:Study-Algorithm,代码行数:14,


示例9: CreateTree

void MyGameTreeCtrl::RefreshTree(string* pstrPanelName){	m_mapNode.clear();	CreateTree();	m_bInsertData = true;	EnsureVisible(GetRootItem());}
开发者ID:2Dou,项目名称:PlayBox,代码行数:7,


示例10: CreateTree

CreateTree(BTree &T)   //必须声明为指针的指针(BTree *T)或者指针的引用 (BTree &T) 因为有 NULL指针; {	char c;	scanf("%c",&c);	if(c ==' ')	{		T = NULL;	}	else	{		T = (BTree)malloc(sizeof(BNode));		(T)->data = c;		CreateTree((T)->lchild);		CreateTree((T)->rchild);		}  } 
开发者ID:silinlin8,项目名称:data-structure,代码行数:16,


示例11: COptionTree

void COptionTreeWrapper::Serialize(CHashString objName, vector<CHashString> objTypes, IArchive &ar, bool bRead){	if (m_mTrees[objName.GetUniqueID()].m_Tree == NULL)	{		m_mTrees[objName.GetUniqueID()].m_Tree = new COptionTree();		m_mTrees[objName.GetUniqueID()].m_Tree->Create(m_Style, m_Rect, m_pParentWnd, m_TreeOptions, m_ID);		m_mTrees[objName.GetUniqueID()].m_Root = m_mTrees[objName.GetUniqueID()].m_Tree->InsertItem(new COptionTreeItem());				CString label;		label = objName.GetString();		label += _T("(");		label += objTypes[0].GetString();		label += _T(")");		m_mTrees[objName.GetUniqueID()].m_Root->SetLabelText(label);		for (UINT i=0; i<objTypes.size(); i++)		{			CreateTree(objTypes[i].GetString(), objName);		}		m_vRootNames.push_back(objName);	}	if (bRead)	{		SerializeIn(ar, objName);	}	else	{		SerializeOut(ar, objName);	}	ExpandOneRoot(objName);}
开发者ID:klhurley,项目名称:ElementalEngine2,代码行数:29,


示例12: TEST_HUFMAN

void TEST_HUFMAN(){	freopen("input.txt", "r", stdin);	int n;   //需要编码的字符的个数	scanf("%d", &n);	int i;	int *wet = (int *)malloc(n * sizeof(int));  //存放每个字符的权值	for (i = 0; i<n; i++)	{		scanf("%d", wet + i);	}	HUffmanCode HC;  //保存赫夫曼编码	HuffmanTree HT = CreateTree(wet, n);  //生成赫夫曼树	HufmanCoding(HT, HC, n);        //求每个字符的赫夫曼编码	printf("哈夫曼编码如下:/n");	for (i = 0; i<n; i++)	{		puts(HC[i]);	}	free(wet);}
开发者ID:Charlyhash,项目名称:DataStruct_C,代码行数:25,


示例13: TreeTest

static void TreeTest (void){	DirEntry_s *root;	root = CreateTree(4, 9, 0);	PrintTree(root, 0);	DeleteTree(root);}
开发者ID:taysom,项目名称:tau,代码行数:7,


示例14: CreateTree

BiTree CreateTree(){   BiTree T;   char ch;   scanf("%c",&ch);   if(ch=='#') T=NULL;   else   {      T=(BiTree)malloc(sizeof(BiTNode));      if(!T) exit(0);      T->data=ch;      T->lchild=CreateTree();      T->rchild=CreateTree();   }   return T;}
开发者ID:mjyplusone,项目名称:CppPrimer,代码行数:16,


示例15: m_CurrentDeep

	/* 	 *	Collision Tree	 */	CollisionTree::CollisionTree(const sf::FloatRect & i_SubRect, const ubyte i_MaxObjects, const ubyte i_TreeDeep)		:m_TreeDeep(i_TreeDeep), m_CurrentDeep(1), m_NodeBox(i_SubRect), m_NodeCapacity(i_MaxObjects), m_IsLeaf(true)	{		m_SubNodes[0] = m_SubNodes[1] = m_SubNodes[2] = m_SubNodes[3] = nullptr;		// Create the tree		CreateTree();	}
开发者ID:Edridan,项目名称:Black-Engine,代码行数:10,


示例16: LoadKeyTextList

KeyTextList* LoadKeyTextList(gchar* filename){	KeyTextList* list;	gchar* pathname = NULL;	if( !g_keytext_dir || !filename )		return NULL;	if( (pathname = CheckFileExists(g_keytext_dir, filename)) == NULL )		if( (pathname = CheckFileExists("keytext", filename)) == NULL )			return NULL;	list = (KeyTextList*)g_malloc(sizeof(KeyTextList));	if( list != NULL )	{		if( (list->tree = CreateTree()) != NULL )		{			if( ReadXMLFile(pathname, list->tree) )			{				return list;			}			FreeTree(list->tree);		}		g_free(list);	}	return NULL;}
开发者ID:spremi,项目名称:cnijfilter-source-3.80,代码行数:28,


示例17: LoadKeyTextList

short LoadKeyTextList( void ){	KeyTextList* list;	char* pathname = NULL;	short  result = -1;	if( !g_keytext_dir  ) goto Err1; 	if( (pathname = CheckFileExists(g_keytext_dir, CNIJLGMON2_RESFILE)) == NULL ){		if( (pathname = CheckFileExists("keytext", CNIJLGMON2_RESFILE)) == NULL )  goto Err1;	}	if ( (list = (KeyTextList*)malloc(sizeof(KeyTextList))) == NULL ) goto Err1;	if( (list->tree = CreateTree()) == NULL ) goto Err2;	if( ReadXMLFile(pathname, list->tree) != 0 ) goto Err3;	g_key_keytext_list = list;	result = 0;	return result;Err3:	FreeStringList( list->tree );Err2:	free( list );Err1:	return result;}
开发者ID:dbnicholson,项目名称:cnijfilter-common,代码行数:29,


示例18: atoi

//-----------------------------------------------------------------------------HTREEITEM CDlgLayerTree::CreateTree(CString sName, HTREEITEM hParent /*= TVI_ROOT*/){	HTREEITEM hReTI = m_tree.InsertItem(sName, hParent);	CStringArray strChildNameArray,strNeedArray;	if (CLayerTreeDef::GetChildrenAliasName(strChildNameArray, strNeedArray, sName))	{		for (int i = strChildNameArray.GetSize() - 1; i >= 0; i--)		{			CString Right;			CPowerConfig::GetRightByResource(strChildNameArray.GetAt(i), Right);			int nRight = atoi(Right);			if (!(nRight & POWER_SCAN))// 对比查看权限			{				//strChildNameArray.RemoveAt(i);///////////////////////////////##############################			}		}		for (int i = 0; i < strChildNameArray.GetSize(); i++)		{			HTREEITEM hTI = CreateTree(strChildNameArray.GetAt(i), hReTI);			CString sTmp = strNeedArray.GetAt(i);			if (!sTmp.IsEmpty() && sTmp.CollateNoCase("0") != 0 && hTI != NULL)			{				SetTreeCheck(hTI);				m_SdeAliasNames.Add(strChildNameArray.GetAt(i));			}		}	}	return hReTI;}
开发者ID:fredrikjonsson,项目名称:cadof72bian,代码行数:32,


示例19: Insert

Tree Insert(int x, Tree T){	if (T == NULL)		T = CreateTree(x);	else if (x < T->element)	{		T->left = Insert(x, T->left);		if (Height(T->left) - Height(T->right) == 2)		{			if (x < T->left->element)				T = SingleRotateLeft(T);			else				T = DoubleRotateLeft(T);		}	}	else if (x > T->element)	{		T->right = Insert(x, T->right);		if (Height(T->right) - Height(T->left) == 2)		{			if (x > T->right->element)				T = SingleRotateRight(T);			else				T = DoubleRotateRight(T);		}	}	T->height = (Height(T->left) > Height(T->right) ? Height(T->left) : Height(T->right)) + 1;	return T;}
开发者ID:Yu-Yan,项目名称:C,代码行数:29,


示例20: main

int main(int argc, char const *argv[]){	//int err;	struct Tree *T;	char *ch = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 	T = CreateTree(ch);	printf("递归先序遍历/n");	PreOrderTraverse(T);	printf("/n");	printf("递归中序遍历/n");	InOrderTraverse(T);	printf("/n");	printf("递归后序遍历/n");	PostOrderTraverse(T);	printf("/n");	printf("非递归先序遍历/n");	PreOrderTraverseStack(T);	printf("/n");	printf("非递归中序遍历/n");	InOrderTraverseStack(T);	printf("/n");	printf("非递归后序遍历/n");	PostOrderTraverseStack(T);	printf("/n");	return 0;}
开发者ID:Cxd2014,项目名称:DataStruct,代码行数:32,


示例21: HuffmanTreeTest

void HuffmanTreeTest() {	int i,n=4,m;	char test[]="DBDBDABDCDADBDADBDADACDBDBD";	char code[100],code1[100];	char alphabet[]={'A','B','C','D'};	int w[]={5,7,2,13} ;	HuffmanTree *ht;	HuffmanCode *hc;	m=2*n-1;	ht=(HuffmanTree *)malloc((m+1)*sizeof(HuffmanTree));	if(!ht)  {		printf("内存分配失败!/n");		exit(0);	}	hc=(HuffmanCode *)malloc(n*sizeof(char*));	if(!hc) {		printf("内存分配失败!/n");		exit(0);	}	CreateTree(ht,n,w);	HuffmanCoding(ht,n,hc);	for(i=1;i<=n;i++)		printf("字母:%c,权重:%d,编码为 %s/n",alphabet[i-1],ht[i].weight,hc[i-1]);	Encode(hc,alphabet,test,code);	printf("/n字符串:/n%s/n转换后为:/n%s/n",test,code);	Decode(ht,n,code,alphabet,code1);	printf("/n编码:/n%s/n转换后为:/n%s/n",code,code1);}
开发者ID:miracle1243,项目名称:algorithm,代码行数:33,


示例22: main

//------------------------------------------------------------------------------int main(){    auto list = CreateList( std::vector<int>( {1,2,3,4,5} ) );    std::cout << PrintList( list ) << std::endl;    std::cout << PrintBackList( list ) << std::endl;    auto listA = CreateList( std::vector<int>( {1,2,3,} ) );    auto listB = CreateList( std::vector<int>( {4,5} ) );    auto ab = Append( listA, listB );    std::cout << PrintList( ab ) << std::endl;    auto tree = CreateTree( std::vector<int>( {4,2,1,3,5} ) );    std::cout << PrintTree( tree ) << std::endl;    auto treelist = TreeToList( tree );    std::cout << PrintList( treelist ) << std::endl;    TestRandomTree();    return EXIT_SUCCESS;}
开发者ID:zhensydow,项目名称:ljcsandbox,代码行数:26,


示例23: main

int main(int argc, char **argv){	CSTree T;	TElemType e;	TElemType e1;	InitTree(&T);	printf("构造空树后,树空否? %d(1:是 0:否) 树根为%c 树的深度为%d/n",/			TreeEmpty(T), Root(T), TreeDepth(T));	CreateTree(&T);	printf("构造空树后,树空否? %d(1:是 0:否) 树根为%c 树的深度为%d/n",/				TreeEmpty(T), Root(T), TreeDepth(T));	printf("先根遍历树T:/n");	PreOrderTraverse(T, vi);	printf("/n请输入等修改的结点的值 新值:");	scanf("%c%*c%c%*c", &e, &e1);	Assign(&T, e, e1);	printf("后根遍历修改后的树T:/n");	PostOrderTraverse_recurssion1(T, vi);	printf("/n");	printf("PostOrderTraverse_recurssion1 complete!/n");	PostOrderTraverse_recurssion2(T, vi);	printf("/n");	printf("PostOrderTraverse_recurssion2 complete!/n");	printf("/n%c的双亲是%c, 长子是%c,下一个兄弟是%c/n", e1, Parent(T, e1),/			LeftChild(T, e1), RightSibling(T, e1));	printf("层序遍历树:/n");	LevelOrderTraverse(T, vi);	DestroyTree(&T);	return EXIT_SUCCESS;}
开发者ID:jasonleakey,项目名称:CrapCodes,代码行数:30,


示例24: Create

void Create(int fract){    switch(fract) {    case TREE:        CreateTree();        break;    }}
开发者ID:gstariarch,项目名称:opengl_walkthrough,代码行数:8,


示例25: main

int main(){    BiTree T;    T=CreateTree();    InOrderTraverse(T);    return 0;}
开发者ID:mjyplusone,项目名称:CppPrimer,代码行数:8,


示例26: tree_pushleft

void tree_pushleft(ptree tree, ULONG type, char *data){	ptree _New = CreateTree();	tree->_Left = _New;	_New->_Parent = tree;	_New->data = data;	_New->type = type;}
开发者ID:rollrat,项目名称:old-library,代码行数:8,


示例27: SpatialGraphKDNode

SpatialGraphKDNode* SpatialGraph::CreateTree(int depth, const BoundingBox& bbox, SpatialGraphKDNode* parent, int index){	SpatialGraphKDNode* node = new SpatialGraphKDNode(bbox, parent);	node->Tree = this;	node->bBlocked = false;	//query physics to see if we're blocked	node->bBlocked = IsBlocked( bbox );	//Calculate my index	if( parent )	{		node->Index = index;	}	else	{		node->Index = 0;	}	//Bail out if we reach max depth	depth--;	node->Depth = _depth - depth;	if (depth > 0 && node->bBlocked )	{		BoundingBox LHSbbox, RHSbbox;		MathUtil::SplitBoundingBox( bbox, (depth % 2) ? MathUtil::AA_X : MathUtil::AA_Y, LHSbbox, RHSbbox );		node->LHC = CreateTree(depth, LHSbbox, node, node->Index << 1);		node->RHC = CreateTree(depth, RHSbbox, node, (node->Index << 1) + 1);		int iMask = ~(0xFFFFFFFF << depth );		//If I have children, pad my index		node->Index = (node->Index << depth) | iMask;		//If all my children are blocked, then destroy my children		if( IsFullyBlocked(node) )		{			DeleteNode( node->LHC );			node->LHC = NULL;			DeleteNode( node->RHC );			node->RHC = NULL;		}	}	return node;}
开发者ID:MrSnowman,项目名称:angel2d,代码行数:45,


示例28: CreateDiskPageManager

//---------------------------------------------------------------------------// Class TApp//---------------------------------------------------------------------------void TApp::Init(){   // Uncoment one of the page manager creation procedures. Do not uncoment both   // of them.    CreateDiskPageManager(); // To create it in disk   //CreateMemoryPageManager(); // To create it in memory   // Creates the tree   CreateTree();}//end TApp::Init
开发者ID:pedro-stanaka,项目名称:PgAR-tree,代码行数:12,


示例29: Initialize

bool pawsConfigCamera::Initialize(){    psengine->GetPSCamera()->LoadFromFile(false,false);    if (!CreateTree())        return false;    UseBorder("line");    return true;}
开发者ID:randomcoding,项目名称:PlaneShift-PSAI,代码行数:9,


示例30: main

int main() {	SearchTree T;	T = CreateTree(T);//	Print(T);	TreeNode* node = Find(T, 4);	printf("%d ", node->data);	printf("/n");	return 0;}
开发者ID:SuperMardle,项目名称:DataStructure,代码行数:9,



注:本文中的CreateTree函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ CreateTupleDescCopy函数代码示例
C++ CreateTransport函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。