赞
踩
1.顺序存储
自上往下、从左至右给每个节点编号(适用于完全/满二叉树,否则空间浪费太多)
对于i节点:其父节点(i/2),左孩子(i*2),右孩子(i*2+1)
2.链式存储
数据域、左孩子指针、右孩子指针、(父节点指针)
- struct Node{
- int data;
- Node* lchild;
- Node* rchild;
- Node* parent;
- };
3.二维数组直接存储
当题目只给出了左右孩子节点,可以直接用二维数组存储,不必建树
son[i][0]:i 节点的左孩子
son[i][1]:i 节点的右孩子
4.链式前向星
当题目未告知父子关系时,仅直到x y之间有边,把树当图存储,建双向边
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。