试题详情
- 简答题简述二叉树的常用操作及各操作的含义。
- 创建一棵空二叉树:创建一棵没有任何结点的二叉树。在顺序表示中,根据树的深度为结点分配内存;在二叉链表表示中,将指向根结点的指针赋值为NULL。
删除一棵二叉树:将二叉树各结点所占据的内存释放。
清空二叉树:将二叉树的所有结点删除,使之成为一棵空二叉树。
以指定元素值创建根结点:创建根结点,并以指定值作为根结点的元素值。
将一个结点作为指定结点的左孩子插入:根据指定元素值生成一个新结点,并将其作为指定结点的左孩子。
将一个结点作为指定结点的右孩子插入:根据指定元素值生成一个新结点,并将其作为指定结点的右孩子。
先序遍历二叉树:也称为先根遍历,其访问方式递归定义如下:对于一棵二叉树,先访问其根结点,再访问根结点的左、右子树;对于左、右子树中的结点仍然是按照先序遍历方式访问,即先访问根结点,再访问根结点的左、右子树。
中序遍历二叉树:也称为中根遍历,其访问方式递归定义如下:对于一棵二叉树,先访问根结点左子树,再访问根结点,最后访问右子树;对于左、右子树中的结点仍然是按照中序遍历方式访问。
后序遍历二叉树:也称为后根遍历,其访问方式递归定义如下:对于一棵二叉树,先访问根结点的左子树,后访问右子树,最后访问根结点;对于左、右子树中的结点仍然是按照后序遍历方式访问。
逐层遍历二叉树:从第1层开始依次对每层中的结点按照从左至右的顺序进行访问。
获取指定结点的双亲结点:根据指定结点获取其双亲结点。在顺序表示中,可以直接根据指定结点的位置计算双亲结点的位置;在二叉链表表示中,则需要从根结点开始遍历二叉树直至找到指定结点的双亲结点。
删除以指定结点为根的子树:将以指定结点为根结点的子树上的所有结点(包括指定结点)删除。
按关键字查找结点:按照某种规则(先序、中序、后序或逐层)依次访问二叉树中的每一结点,直至找到与关键字匹配的结点。
判断二叉树是否为空:判断一棵二叉树是否为空二叉树。
修改指定结点的元素值:将指定结点的元素值修改为指定值。
计算二叉树的深度:按照某种规则依次访问二叉树中的每一结点,计算各结点所在层的最大值。
计算二叉树的叶子结点数:按照某种规则依次访问二叉树中的每一结点,计算度为0的结点数。 关注下方微信公众号,在线模考后查看
热门试题
- 链表不具有的特点是()。
- 求二叉树中以元素值为x的结点为根的子树的
- 以下表中可以随机访问的是()
- 使用双链表存储线性表,其优点是可以()。
- 二维数组M[i,j]的元素是4个字符(每
- 从一个循环顺序队列删除元素时,首先需要(
- 采用邻接表存储的图的深度优先遍历算法类似
- 数据结构里,二叉树的先序序列是:ABDC
- 假设以两个元素依值递增有序排列的线性表A
- 根据使用频率为5的字符设计的哈夫曼编码不
- 在一个具有n个顶点的无向完全图中,包含有
- 线性表是具有n个()的有限序列。
- 数据结构里,下列选项中关于顺序表的概念理
- 对哈夫曼树,下列说法错误的是()。
- 在一个具有n个结点的有序单链表中插入一个
- 在顺序栈中删除一个元素,至少要移动()元
- 设有一个10阶的对称矩阵A,采用压缩存储
- 一棵深度为h的满二叉树具有如下性质:第h
- 线性表的顺序存储结构是一种()的存储结构
- 推到和估算算法的时间复杂度属于()。