北京邮电大学信息与通信工程学院
2. 程序分析
2.1 存储结构
二叉链表:二叉树每个结点最多有两个分支,因此一般多用二叉链表的存储结
构。
二叉链表中每个结点由 3 个域组成:
1、 数据域:存储结点的数据、
2、 左指针域:存储左孩子结点的地址
3、 右指针域:存储右孩子结点的地址
2.2 关键算法分析
1:二叉树的创建
a:创建根结点:R=new Binode<T>;
b:赋值:R->data=data[i-1];
c:创建左子树:Create(R->lch,data,2*i);
d:创建右子树:Create(R->rch,data,2*i+1);
e:用构造函数调用 Create 函数:create(root,data,1);
时间复杂度:O(n)
空间复杂度:O(n)
第 2 页