设两个栈(stack1,stack2)共享一个一维数组空间s[m],它们的栈底分别设在数组的两端,试编写一个算法,

2022-08-14 科技 87阅读
我们的想法是很简单的根在0的位置,后来假设的当前位置,然后我的左子节点2I +1,+2 2I右子节点。如根的左子节点的右子节点。左子节点,右子节点。定义一个空值没有子节点,如空。
假设交界处的三名成员:值,左,右
假定数组是全球性的,如果不是作为一个参数。
递归的实现是相对简单的:
无效btree2array(节点,指标)
{
??(节点?== NULL)
????阵列[索引] =空;
?数组[索引] =节点值;
??btree2array(节点左,指数* 2 + 1);
??btree2array(节点 - >指数* 2 + 2);
}

开头的呼叫句子:
btree2array(根,0);
此外,虚拟机,超低价团购
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com