参考答案和解析
typedef struct node {int data; struct node *lchild,*rchild;} bitree; void swapbitree(bitree *bt) { bitree *p; if(bt==0) return; swapbitree(bt->lchild); swapbitree(bt->rchild); p=bt->lchild; bt->lchild=bt->rchild; bt->rchild=p; }
更多“编写算法,在链式存储结构上交换二叉树中所有结点左右子树的算法。”相关问题
  • 第1题:

    编写递归算法,求以二叉链表存储的二叉树的深度。


    参考答案:

  • 第2题:

    在非空二叉树的中序遍历序列中,二叉树的根结点的左边(40)。

    A.只有左子树上的所有结点

    B.只有左子树上的部分结点

    C.只有右子树上的所有结点

    D.只有右子树上的部分结点


    正确答案:A
    解析:在非空二叉树中序遍历序列中,二叉树的根结点的左边的那些结点为根结点的左子树上的所有结点。答案为A。

  • 第3题:

    对一棵二叉树的中序遍历序列中,根结点的左边包括( )。

    A.左子树上的叶子结点

    B.右子树上的所有结点

    C.左子树上的所有结点

    D.右子树上的叶子结点


    正确答案:C

  • 第4题:

    在平衡二叉树中,()。

    A.任意结点的左右子树结点数目相同
    B.任意结点的左右子树高度相同
    C.任意结点的左右子树高度之差的绝对值不大于1
    D.不存在度为1的结点

    答案:C
    解析:
    该题考查考生对平衡二叉树的理解,形态匀称的二叉树称为平衡二叉树,其严格定义是:一棵空树是平衡二叉树;T是一棵非空二叉树,其左、右子树为TL和TR,令h1和hr分别为左、右子树的深度,当且仅当TL、TR都是平衡=叉树且丨h1-hr丨≤1时,T是平衡二叉树

  • 第5题:

    若二又树采用的是二又链表存储结构.要交换其所有分支结点左右子树的位置利用()遍历方斌最合适。


    正确答案:中序

  • 第6题:

    在二叉树的链式存储结构中,通常每个结点中设置三个域,它们是()、()、()。


    正确答案:值域;左指针;右指针

  • 第7题:

    满二叉树是()。

    • A、所有的分支结点都存在左子树和右子树,并且所有叶子都在同一层上。
    • B、所有的分支结点都存在左子树和右子树,并且所有叶子都在最后两层上。
    • C、所有的分支结点只存在左子树,并且所有叶子都在最后两层上。
    • D、都不对

    正确答案:A

  • 第8题:

    在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该()

    • A、只有左子树上的所有结点
    • B、只有左子树上的部分结点
    • C、只有右子树上的所有结点
    • D、只有右子树上的部分结点

    正确答案:A

  • 第9题:

    填空题
    一般树的每一个结点可以有()个子树,在二叉树中每个结点的子树数不能超过()个,而二叉树中的子树有左右之分,其次序不能颠倒。

    正确答案: 任意多,2
    解析: 暂无解析

  • 第10题:

    单选题
    满二叉树是()。
    A

    所有的分支结点都存在左子树和右子树,并且所有叶子都在同一层上。

    B

    所有的分支结点都存在左子树和右子树,并且所有叶子都在最后两层上。

    C

    所有的分支结点只存在左子树,并且所有叶子都在最后两层上。

    D

    都不对


    正确答案: D
    解析: 暂无解析

  • 第11题:

    单选题
    若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用()遍历方法最合适。
    A

    前序

    B

    中序

    C

    后序

    D

    按层次


    正确答案: D
    解析: 后续遍历和层次遍历均可实现左右子树的交换,不过层次遍历的实现消耗比后续大,后序遍历方法最合适。

  • 第12题:

    多选题
    以下说法正确的是()
    A

    二叉树的特点是每个结点至多只有两棵子树。

    B

    二叉树的子树无左右之分。

    C

    二叉树只能进行链式存储。

    D

    树的结点包含一个数据元素及若干指向其子树的分支。


    正确答案: A,C
    解析:

  • 第13题:

    编写递归算法,交换二叉链表存储的二叉树中每个结点的左、右子树。


    参考答案:

  • 第14题:

    在一非空二叉树的中序遍历序列中,根结点的右边(40)。

    A.只有右子树上的所有结点

    B.只有右子树上的部分结点

    C.只有左子树上的部分结点

    D.只有左子树上的所有结点最左子树


    正确答案:A
    解析:中序遍历二叉树的操作定义为:1、中序遍历左子树;2、访问根结点;3、中序遍历右子树。所以应该选择A。

  • 第15题:

    在一非空二叉树的中序遍历序列中,根结点的右边( )

    A.只有右子树上的所有结点

    B.只有右子树上的部分结点

    C.只有左子树上的所有结点

    D.只有左子树上的部分结点


    正确答案:A

  • 第16题:

    以下关于二叉树说法正确的是()。

    • A、二叉树的特点是每个结点至多只有两棵子树。
    • B、二叉树的子树无左右之分。
    • C、二叉树只能进行链式存储。
    • D、树的结点包含一个数据元素及若干指向其子树的分支。

    正确答案:A,D

  • 第17题:

    在平衡二叉树中,任意结点左右子树的高度差(绝对值)不超过1


    正确答案:正确

  • 第18题:

    前序遍历和中序遍历结果相同的二叉树是()。

    • A、根结点无左孩子的二叉树
    • B、根结点无右孩子的二叉树
    • C、所有结点只有左子树的二叉树
    • D、所有结点只有右子树的二叉树

    正确答案:D

  • 第19题:

    若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用()遍历方法最合适。

    • A、前序
    • B、中序
    • C、后序
    • D、按层次

    正确答案:C

  • 第20题:

    一般树的每一个结点可以有()个子树,在二叉树中每个结点的子树数不能超过()个,而二叉树中的子树有左右之分,其次序不能颠倒。


    正确答案:任意多;2

  • 第21题:

    单选题
    在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该()
    A

    只有左子树上的所有结点

    B

    只有左子树上的部分结点

    C

    只有右子树上的所有结点

    D

    只有右子树上的部分结点


    正确答案: A
    解析: 暂无解析

  • 第22题:

    多选题
    以下关于二叉树说法正确的是()。
    A

    二叉树的特点是每个结点至多只有两棵子树。

    B

    二叉树的子树无左右之分。

    C

    二叉树只能进行链式存储。

    D

    树的结点包含一个数据元素及若干指向其子树的分支。


    正确答案: D,A
    解析: 暂无解析

  • 第23题:

    单选题
    前序遍历和中序遍历结果相同的二叉树是()。
    A

    根结点无左孩子的二叉树

    B

    根结点无右孩子的二叉树

    C

    所有结点只有左子树的二叉树

    D

    所有结点只有右子树的二叉树


    正确答案: C
    解析: 暂无解析

  • 第24题:

    填空题
    若二又树采用的是二又链表存储结构.要交换其所有分支结点左右子树的位置利用()遍历方斌最合适。

    正确答案: 中序
    解析: 暂无解析