⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_23921.htm

📁 一些关于vc的问答
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<p>
序号:23921 发表者:Zerg 发表日期:2002-12-07 19:26:42
<br>主题:帮我写个二叉树的实例吧.(有定义)谢谢!!!
<br>内容:帮我写个二叉树的实例吧.(有定义)谢谢!!!<BR>#include&lt;iostream&gt;<BR><BR>using std::cout;<BR>using std::endl;<BR>using std::cin;<BR><BR>////////////////////////////////////////////////////////<BR>class BinNode {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Binary tree node class<BR>public:<BR>&nbsp;&nbsp;int element;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // The node's value<BR>&nbsp;&nbsp;BinNode* left;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Pointer to left child<BR>&nbsp;&nbsp;BinNode* right;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Pointer to right child<BR>&nbsp;&nbsp;static BinNode* freelist;<BR>&nbsp;&nbsp;// Two constructors -- with and without initial values<BR>&nbsp;&nbsp;BinNode() { left = right = NULL; }&nbsp;&nbsp; //Overload BinNode<BR>&nbsp;&nbsp;BinNode(int e, BinNode* l =NULL, BinNode* r =NULL)<BR>&nbsp;&nbsp;{ element = e; left = l; right = r; }&nbsp;&nbsp; //initialize left,right,element<BR>&nbsp;&nbsp;~BinNode() { }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Destructor<BR>&nbsp;&nbsp;BinNode* leftchild() const&nbsp;&nbsp;&nbsp;&nbsp;//return leftpoint<BR>&nbsp;&nbsp;{ return left; }<BR>&nbsp;&nbsp;BinNode* rightchild() const&nbsp;&nbsp; //return rightpoint<BR>&nbsp;&nbsp;{ return right; }&nbsp;&nbsp;<BR>&nbsp;&nbsp;int value() const&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //return element<BR>&nbsp;&nbsp;{ return element; };<BR>&nbsp;&nbsp;void setValue(int val) <BR>&nbsp;&nbsp;{ element = val; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//set the element<BR>&nbsp;&nbsp;bool isLeaf() const&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Return TRUE if is a leaf<BR>&nbsp;&nbsp;{ return (left == NULL) &amp;&amp; (right == NULL); } <BR>&nbsp;&nbsp;void* operator new(size_t);&nbsp;&nbsp;// Overload new&nbsp;&nbsp;<BR>&nbsp;&nbsp;void operator delete(void*); // Overload delete<BR>};<BR>//////////////////////////////////////////////////////////////////////////////////<BR>// This creates space for the freelist variable<BR>BinNode* BinNode::freelist = NULL;&nbsp;&nbsp;//initialize freelist<BR><BR>void* BinNode::operator new(size_t) {<BR>&nbsp;&nbsp;if(freelist == NULL) return(::new BinNode);<BR>&nbsp;&nbsp;BinNode* temp = freelist;&nbsp;&nbsp;freelist = freelist-&gt;left;<BR>&nbsp;&nbsp;return temp;<BR>}<BR>//////////////////////////////<BR>void BinNode::operator delete(void* ptr) {<BR>&nbsp;&nbsp;((BinNode*)ptr)-&gt;left = freelist;<BR>&nbsp;&nbsp;freelist = (BinNode*)ptr;<BR>}<BR>////////////////////<BR>//<BR>//!!!!!!!!!!!!!!!!!!!!!!!!!!以上是教材上的内容!!!!!!!!!!!!!!!!!!!!<BR>//<BR>////////////////////////////////////////////////////////////////////////////////<BR>//以下是自己写的,问题多多!!!!!!!!!<BR>////////////////////////////////////////////////////////////////////////<BR>BinNode Creatree(BinNode *p);<BR>int main()<BR>{<BR><BR><BR><BR><BR><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>}<BR>///////////////////////////////////////////<BR>BinNode Creatree(BinNode *p)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;int temp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;int num=10;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;while(num--)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin&gt;&gt;temp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( temp==0 )<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;p = NULL; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p = new BinNode( temp );<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p-&gt;element = temp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creatree(p-&gt;left);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creatree(p-&gt;right);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return *p;<BR>}<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -