美文网首页
二叉树算法习题

二叉树算法习题

作者: 程序H | 来源:发表于2017-09-22 18:13 被阅读67次

学习了二叉树的概念,针对学习结果做一些习题。

  1. 某二叉树中有n个度为2的节点,则该二叉树的叶子节点数为?
    解析:
    二叉树的叶子节点个数公式:度数为2的节点加一,故答案为n+1。

  2. 深度为5的满二叉树有多少个叶子节点?
    解析:
    度为0的结点(即叶子节点)总比度为2的结点多一个。
    因为是满二叉树,可以先算出深度为4的节点个数,2^4-1=15,如果深度为5,则15 +1 = 16;

  3. 下列二叉树前序遍历的结果是?

       A  
     /   \
    B     C
   / \   / \
  D   E F   G
   \       /
    H     I

前序遍历是从根节点,至左子树,再至右子树。
所以结果是ABDHECFGI

  1. 对长度为n的线性表排序,最坏情况下,比较次数不是n(n-1)/2的排序方式是?
    解析:快速排序、冒泡排序、简单插入排序法最坏排序方式都是n(n-1)/2。
    堆排序法的最坏排序法是n*log2n。
    所以答案为堆排序法。

  2. 设一颗完全二叉树共有700个节点,则该完全二叉树中的叶子节点数为?
    解析:我们知道叶子节点的个数一定比度为2的节点多一个,故我们可以设置:
    度为2的节点:n,
    叶子节点:n + 1,
    度为1节点:x
    2n + x = 699
    结果为奇数故x为1,最终我们可以得出2n = 698 n = 349。
    所以叶子节点的个数为350。

  3. 对长度为n的线性表中查找最大项,在最坏情况下所需要的比较次数为?
    解析:线性表最坏比较次数与它的长度是相等,所以答案为n。

  4. 某二叉树共有7个节点,其中叶子节点只有1个,则该二叉树的深度为?(假设根节点在第一层)
    解析:我们知道如果叶子节点只有一个说明没有度为2的节点。一共7个节点,可以顺序往下排,故深度为7。
    举例图片:

         A  
        /   
       B   
      / 
     C
      \      
       D
      / 
     E   
      \      
       F 
      / 
     G
    

相关文章

  • 算法与数据结构

    二叉树 1. 二叉树打印练习题 有一棵二叉树,请设计一个算法,按照层次打印这棵二叉树。给定二叉树的根结点root,...

  • 二叉树 for iOS (Swift篇)

    学习了二叉树的概念及二叉树算法习题后, 结合学习的知识通过代码实现一些功能。 二叉树说白了是考验程序员的递归思维,...

  • 二叉树算法习题

    学习了二叉树的概念,针对学习结果做一些习题。 某二叉树中有n个度为2的节点,则该二叉树的叶子节点数为?解析:二叉树...

  • 每日Leetcode—算法(10)

    100.相同的树 算法: 101.对称二叉树 算法: 104.二叉树的最大深度 算法: 107.二叉树的层次遍历 ...

  • 每日Leetcode—算法(11)

    110.平衡二叉树 算法: 111.二叉树的最小树深 算法: 112.路径总和 算法:

  • Algorithm小白入门 -- 二叉树

    二叉树二叉树构造二叉树寻找重复子树 1. 二叉树 基本二叉树节点如下: 很多经典算法,比如回溯、动态规划、分治算法...

  • 二叉树的基本算法

    二叉树的基本算法 树、二叉树 的基本概念,参考数据结构算法之美-23讲二叉树基础(上):树、二叉树[https:/...

  • 算法习题

    4 递归与分治 选择问题 例4.9 查找第k个小/大元素 n个元素,元素划分n/5(不带余数),每组五个元素,不足...

  • 2018-11-11 算法练习题

    下面是几道算法练习题:

  • 程序设计练习题

    算法竞赛入门经典 习题1-1平均数 习题1-2温度 习题1-3 习题1-4 习题1-5 习题1-6 习题1-7 习...

网友评论

      本文标题:二叉树算法习题

      本文链接:https://www.haomeiwen.com/subject/ytgfextx.html