用数组创建二叉树的一种方法
来源:互联网 发布:唐软网络是培训吗 编辑:程序博客网 时间:2024/06/11 03:51
很多面试题都是二叉树相关的, 因此经常需要测试自己的写的程序, 那么创建二叉树就必不可少, 用数组中的值初始化二叉树是一种比较简单的方法.
typedef struct BSTreeNode{
int m_nValue;
struct BSTreeNode * m_pLeft;
struct BSTreeNode * m_pRight;
}BSTreeNode;
BSTreeNode * creatBTree(int data[], int index, int n)
{
BSTreeNode * pNode = NULL;
if(index < n && data[index] != -1) //数组中-1 表示该节点为空
{
pNode = (BSTreeNode *)malloc(sizeof(BSTreeNode));
if(pNode == NULL)
return NULL;
pNode->m_nValue = data[index];
pNode->m_pLeft = creatBTree(data, 2 * index + 1, n); //将二叉树按照层序遍历, 依次标序号, 从0开始
pNode->m_pRight = creatBTree(data, 2 * index + 2, n);
}
return pNode;
}
0 0
- 用数组创建二叉树的一种方法
- 二叉搜索树的一种构造方法
- 一种二叉树遍历方法
- 创建数据表的一种方法
- 创建线程的一种方法
- 【数据结构】创建二叉树的方法
- 二叉树的创建以及遍历方法
- 根据数组创建二叉树
- 根据数组创建二叉树
- 用Javascript创建对象的另外一种方法
- 怎样编写一个程序,把一个有序整数数组放到二叉树中? 编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
- 给定有序数组,创建高度最小的二叉查找树
- 有序数组创建高度最小的二叉查找树
- 创建 git repository 的一种方法
- solr core 创建的另外一种方法
- 创建多线程的第一种方法
- Java创建线程的一种方法
- 创建一种线程的方法续
- C11 新特性
- Java IO : RandomAccessFile
- 重写window的原生方法:console
- MySQL 备份恢复
- JavaScript函数声明前置与变量声明
- 用数组创建二叉树的一种方法
- Large-scale cluster management at Google with Borg 论文要点记录
- spring boot--小试牛刀
- Understanding LSTM Networks
- [高斯消元 线性基 贪心 拟阵] BZOJ 3105 [cqoi2013]新Nim游戏
- ANDROID 一键搞定JNI创建C头文件
- AAAAAAAAAAAAAAAAAAa
- 如何查看class文件以及自动下载对应的src包
- HTML5学习笔记01——文本标签