ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> .NET技术
数据结构与算法(C#实现)系列---N叉树(一)
数据结构与算法(C#实现)系列---N叉树(一)



Heavenkiller(原创)



N叉树的每一节点度数都相同,为N



using System;



using System.Collections;







namespace DataStructure



{



/// <summary>



/// NaryTree 的摘要说明。-----N叉树



/// </summary>



public class NaryTree:Tree



{



// member variables



protected object key;



protected uint degree;



protected ArrayList treeList=new ArrayList();



//protected uint height=0;//暂时默认为0







//create an empty tree whose attribute of degree is _degree



public NaryTree(uint _degree)



{



//



// TODO: 在此处添加构造函数逻辑



//



this.key=null;



this.degree=_degree;



this.treeList=null;



}



//构造一棵叶子结点的N叉树



public NaryTree(uint _degree,object _key)



{



this.key=_key;



this.degree=_degree;



this.treeList=new ArrayList();



this.treeList.Capacity=(int)_degree;







for(int i=0;i<this.treeList.Capacity;i++)



{







this.treeList.Add( this.GetEmptyInstance(_degree) );



}



}



//-----------------------------------------------------------------



protected virtual object GetEmptyInstance(uint _degree)



{ return new NaryTree(_degree); }



//-------------------------------------------------------------------



//judge whether the tree is an empty tree



public override bool IsEmpty()



{ return this.key==null; }



//判定是否是叶子结点。如果即不是空树且每一棵子树均为空树,则为叶子结点



public override bool IsLeaf()



{



if(IsEmpty())



return false;



for(uint i=0;i<this.degree;i++)



{



if( !(this[i].IsEmpty()) )



return false;



}



return true;



}



//-----------------------------------Inherited Attributes---------------------------------



public override object Key



{



get



{



return this.key;



}



}



//索引器



public override Tree this[uint _index]



{



get



{







if( _index>=this.degree )



throw new Exception("My:out of index!");//如果出界,则抛出异常



if( this.IsEmpty() )



return null;//如果是空树,则索引器返回一个 null



return (Tree)this.treeList[(int)_index];



}



set



{



this.treeList[(int)_index]=value;



}




 
 
本站关键词:
|东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管||东莞域名空间|东莞广告公司|东莞广告设计|网站建设东莞|东莞网站制作|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有