求一个m叉树深度优先遍历的程序!多谢各位前辈。
要做的是这样的一件事情:
有一个m叉树,m是任意的一个数字,然后我想遍历这棵树,给树中的每个节点一个编码。

比如,如图的这样的一个树,我想遍历这棵树,然后给树中的每个节点一个编码【起始位置,结束位置】。
看这棵树的最左边。
比如第0层r这个根节点,深度优先遍历,第一次访问的时候的给一个数字做为它的起始位置,例如这里使用的是1,
第一层这个a节点给的起始位置是2,第二层这个a的起始位置是3,第三层c这个起始位置是4,第四层这个a的起始位置是5,
这个时候已经遍历到叶子节点了,接着要从第四层这个a节点返回,那么返回的时候第二次经过了a,那么第四层这个a节点
的结束位置就是6,然后向上返回到第三层的c,那么c的结束位置是7.。。。。。。等等

设置编码【起始位置,结束位置】,这个东西我可以解决。
但是m叉树我写不出来。求前辈帮忙,注意这棵树非常非常的大。但是深度不会超过10,m也不会超过10
实际上这个是一个XML文档转换成为一棵树。
我就是想遍历这棵树。
求一个程序 谢谢各位 拜谢
有一个m叉树,m是任意的一个数字,然后我想遍历这棵树,给树中的每个节点一个编码。

比如,如图的这样的一个树,我想遍历这棵树,然后给树中的每个节点一个编码【起始位置,结束位置】。
看这棵树的最左边。
比如第0层r这个根节点,深度优先遍历,第一次访问的时候的给一个数字做为它的起始位置,例如这里使用的是1,
第一层这个a节点给的起始位置是2,第二层这个a的起始位置是3,第三层c这个起始位置是4,第四层这个a的起始位置是5,
这个时候已经遍历到叶子节点了,接着要从第四层这个a节点返回,那么返回的时候第二次经过了a,那么第四层这个a节点
的结束位置就是6,然后向上返回到第三层的c,那么c的结束位置是7.。。。。。。等等

设置编码【起始位置,结束位置】,这个东西我可以解决。
但是m叉树我写不出来。求前辈帮忙,注意这棵树非常非常的大。但是深度不会超过10,m也不会超过10
实际上这个是一个XML文档转换成为一棵树。
我就是想遍历这棵树。
求一个程序 谢谢各位 拜谢
...全文
相关推荐
按层次遍历二叉树的算法
这种遍历方式可以分为两种:宽度优先遍历(Breadth-First Traversal)和深度优先遍历(Depth-First Traversal)。本文将详细介绍按层次遍历二叉树的算法。
Chapter二叉树的遍历PPT教学课件.pptx
而二叉树是非线性结构,其遍历需要遵循一定的规则,以生成一个包含所有节点的线性序列。二叉树的遍历方式主要有两种:深度优先遍历和广度优先遍历。1.
数据结构原理与分析0134318日下复习资料全.doc
深度优先遍历在邻接表下类似于二叉树的先序遍历,即访问根节点,然后遍历左子树,最后遍历右子树。3. **二叉链表**:在一棵二叉树的二叉链表表示中,每个节点有两个指针域,一个指向左孩子,一个指向右孩子。
数据结构原理与分析--01343--18日下-复习资料.doc
线性表:线性表是一个有限序列,具有 n 个数据元素。邻接表的存储结构类似于二叉树的深度优先遍历。2. 栈:栈是一种后进先出(LIFO)的数据结构。对于栈操作数据的原则是后进先出。3.
2021西安交通大学915真题1
对邻接表存储的图进行深度优先遍历类似于对二叉树的前序遍历。8. 顺序循环队列的元素个数计算公式为`(rear - front + m) % m`。9.


