dsbanana 2015-11-03 15:44 采纳率: 0%
浏览 1484

二叉树递归中,将递增的静态变量最后变回零,怎么做?

//按照前序遍历序列建立二叉树
void CreateBTree_Pre(BTNode *&root, DataType Array[])
{
static int count=0; //静态变量count
char item=Array[count];//读取Array[]数组中的第count个元素
count++;
if(item == '#') //如果读入#字符,创建空树
{ root = NULL; return ;}
else
{
root = new BTNode;
root->data = item;
CreateBTree_Pre (root->lchild,Array); //建左子树
CreateBTree_Pre (root->rchild,Array); //建右子树
}
}
我发现一个问题,这个建立二叉树,只能在main函数中建立一次,执行了一次CreateBTree_Pre函数后,count的值就非零了。我要让这函数执行完后count变回零,怎么写?
我把count=0放在else块的最后,经测试不行,把count--放在函数最后,经测试也不
行。这个在递归中将递增的静态变量最后变回零,怎么做啊?越想越乱了......

  • 写回答

2条回答 默认 最新

  • xpbobcsdn 2015-11-04 01:13
    关注

    这个简单啊,你在CreateBTree_Pre的最后加一句count=0;就行了,这样每次运行完都是0

    评论

报告相同问题?

悬赏问题

  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺