树的实现
2015-08-08 10:33
453 查看
实现树的一种方法是在每一个结点除数据外还要有一些链,来指向该结点的每一个儿子。然而,由于每个结点的儿子数可能变化很大并且事先不知道,因此在数据结构中建立到各儿子结点的直接链接是不可行的,因为这样会产生太多浪费的空间。实际上解法很简单:将每个结点的所有儿子结点都放在树结点的链表中。下面是一个非常典型的声明。
![](https://img-blog.csdn.net/20150808103102170)
上述结构表示的树的第一个儿子/下一个兄弟的表示法
struct TreeNode { Object element; TreeNode * firstchild; TreeNode * nextSibling; };
上述结构表示的树的第一个儿子/下一个兄弟的表示法
相关文章推荐
- Lua教程(七):数据结构详解
- 解析从源码分析常见的基于Array的数据结构动态扩容机制的详解
- C#数据结构揭秘一
- 数据结构之Treap详解
- JavaScript数据结构和算法之图和图算法
- Java数据结构及算法实例:冒泡排序 Bubble Sort
- Java数据结构及算法实例:插入排序 Insertion Sort
- Java数据结构及算法实例:考拉兹猜想 Collatz Conjecture
- java数据结构之java实现栈
- java数据结构之实现双向链表的示例
- Java数据结构及算法实例:选择排序 Selection Sort
- Java数据结构及算法实例:朴素字符匹配 Brute Force
- Java数据结构及算法实例:汉诺塔问题 Hanoi
- Java数据结构及算法实例:快速计算二进制数中1的个数(Fast Bit Counting)
- java数据结构和算法学习之汉诺塔示例
- Java数据结构及算法实例:三角数字
- Java数据结构之简单链表的定义与实现方法示例
- 数据结构之AVL树详解
- qqwry.dat的数据结构图文解释第1/2页
- JavaScript中数据结构与算法(五):经典KMP算法