问一个编译的题

TESTMYACM 2005-07-02 05:43:38
在C有树这种数据结构
我想问问:二叉树,他的地址编码是怎么样呢?
例如
1
2 3
4 5 6 7
每个节点的地址是多少

如何推他们的节点的地址
...全文
147 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
TESTMYACM 2005-07-20
  • 打赏
  • 举报
回复
如果按照堆排序中使用的那样:i的孩子标号为2*i和2*i+1,i的父亲标号:[i/2]。
那么空间增长很快,是指数级别把
qrlvls 2005-07-04
  • 打赏
  • 举报
回复
建议先好好学学基础
qrlvls 2005-07-04
  • 打赏
  • 举报
回复
如果你要问树的线性存储格式的话也有好多种方法
qrlvls 2005-07-04
  • 打赏
  • 举报
回复
这个是不确定的,可以动态分配
TESTMYACM 2005-07-04
  • 打赏
  • 举报
回复
地址编码:每个节点在内存的地址
TESTMYACM 2005-07-04
  • 打赏
  • 举报
回复
如果按照堆排序中使用的那样:i的孩子标号为2*i和2*i+1,i的父亲标号:[i/2]。
那么空间增长很快,是指数级别把
trackant 2005-07-04
  • 打赏
  • 举报
回复
在C中并没有自动提供树这种数据结构,只是说它的指针功能很适合我们构造树这种结构。如果是用malloc产生结点,则地址是不定的。若是用数组来模拟树的结构,则取决于你的解释,最普遍的就是像堆排序中使用的那样:i的孩子标号为2*i和2*i+1,i的父亲标号:[i/2]。但也可以用所谓的静态表来表示,就是增加域来保存子结点或父结点下标,此时和malloc类似,只不过是把表当作存储空间,然后手动维护这些存储空间罢了。
mmmcd 2005-07-03
  • 打赏
  • 举报
回复
i的孩子标号:2*i,2*i+1
i的父亲标号:[i/2]

地址编码是如何定义的?
TESTMYACM 2005-07-03
  • 打赏
  • 举报
回复
谁会呢??

33,028

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧