设计递归算法,判断二叉树t是否满足小根堆的特点。二叉链表的类型定义如下:typedef int datatype; //结点的数据类型,假设为inttypedef struct NODE *pointer; //结点指针类型struct NODE {datatype data;pointer lchild,rchild;};typedef pointer bitree; //根指针类型

题目
设计递归算法,判断二叉树t是否满足小根堆的特点。二叉链表的类型定义如下:

typedef int datatype;        //结点的数据类型,假设为int

typedef struct NODE *pointer; //结点指针类型

struct NODE {

datatype data;

pointer lchild,rchild;

};

typedef pointer bitree;     //根指针类型


相似考题
更多“设计递归算法,判断二叉树t是否满足小根堆的特点。二叉链表的类型定义如下: ”相关问题
  • 第1题:

    堆是一种数据结构,分为大顶堆和小顶堆两种类型。大(小)顶堆要求父元素大于等于(小于等于)其左右孩子元素。则( )是一个小顶堆结构。堆结构用二叉树表示,则适宜的二叉树类型为(请作答此空)。对于10个结点的小顶堆,其对应的二叉树的高度(层数)为( )。堆排序是一种基于堆结构的排序算法,该算法的时间复杂度为( )。

    A.普通二叉树
    B.完全二叉树
    C.二叉排序树
    D.满二叉树

    答案:B
    解析:
    将元素按照层次遍历的方式压入二叉树,只有选项A满足小顶堆的要。求小顶堆是一种经过排序的完全二叉树,对于一个完全二叉树,第1层为最多1个结点,第2层最多2个结点,第n层最多2^ (n- 1 )个结点,本题1 0个结点=1 +2+4+3 ,所以需要4层

  • 第2题:

    对于任意非空二叉树,要设计出其后序遍历的非递归算法而不是用堆栈结构,最适合的方法是对该二叉树采用 存储结构。

    A.三叉链表

    B.二叉链表

    C.顺序

    D.索引


    对;对;对;错;对

  • 第3题:

    已知二叉树以二叉链表结构存储,根指针为root,结构类型定义如下。请编写递归算法统计叶子结点个数。 typedef struct node { char data; struct node *lchild,*rchild; }BiNode,*BiTree;


    错误

  • 第4题:

    按照二叉树的递归定义,对二叉树遍历的常用算法有()、()、()三种。
    先序;中序;后序

  • 第5题:

    已知二叉树以二叉链表结构存储,根指针为root,请编写二叉树的层次遍历算法。 结构类型定义如下: typedef struct node { char data; struct node *lchild,*rchild; }BiNode,*BiTree;


    错误