清华大学出版社出版的c++程序设计课本

源代码在线查看: 9-11.h

软件大小: 172 K
上传用户: zln12345
关键词: 清华大学 出版社 程序设计
下载地址: 免注册下载 普通下载 VIP

相关代码

				//9-11.h
				#ifndef TREENODE_CLASS 
				#define TREENODE_CLASS
				
				#ifndef NULL
				const int NULL = 0;
				#endif  // NULL
				
				template 
				class TreeNode
				{
				   private:
				      TreeNode *left;    //左指针
				      TreeNode *right;   //右指针
				
				   public:
				      T data;    //结点数据
				   
				      // 构造函数
				      TreeNode (const T& item, TreeNode *lptr = NULL,
				                TreeNode *rptr = NULL);
				   
				      // 访问指针域的函数
				      TreeNode* Left(void) const;      //取得左指针
				      TreeNode* Right(void) const;     //取得右指针
				   
				      // 删除当前结点的左右子树
				      void release();
				};
				
				// 构造函数,初始化数据域和指针域
				template 
				TreeNode::TreeNode (const T& item, TreeNode *lptr,
				    TreeNode *rptr): data(item), left(lptr), right(rptr)
				{}
				
				//取得左指针
				template 
				TreeNode* TreeNode::Left(void) const
				{
				   return left;
				}
				
				//取得右指针
				template 
				TreeNode* TreeNode::Right(void) const
				{
				   return right;
				}
				
				// 删除当前结点的左右子树
				template 
				void TreeNode::release()
				{
				if(left)
				{  //删除左子树
				   left->release();
				   delete left;
				   left=NULL;
				}
				if(right)
				{  //删除右子树
				   right->release();
				   delete right;
				   right=NULL;
				}
				}
				
				#endif // TREENODE_CLASS
							

相关资源