zoukankan      html  css  js  c++  java
  • 大数医达面试题

    测试题

    1、用任意一种编程语言定义一个class或struct来表示二叉树。

    备注:可以不写构造函数和对象初始化的代码,仅定义出class或struct的成员变量即可。其中节点的值用int或char类型即可。

     2、写一个函数实现二叉树的先序遍历,输入参数是刚才定义的这个二叉树。

    备注: 函数不需要有返回值,只要能print出来节点的值即可。

    3、写一个函数实现二叉树的广度优先遍历。

    备注:如需用到复杂数据结构,如队列、栈、hashmap等,可假设标准库已存在,可直接使用不需要单独实现。

     

     

    背景知识:

    1.什么是二叉树?

    二叉树是每个结点最多有两个子树的树结构。

    通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。

    2.什么是二叉树的先序遍历?

    先序遍历也叫做先根遍历、前序遍历,可记做根左右(二叉树父结点向下先左后右)。

    首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树,如果二叉树为空则返回。

    例如,下图所示二叉树的遍历结果是:ABDECF

    3.什么是二叉树的广度优先遍历?

    广度优先遍历对于二叉树来说可以认为是按层遍历,其中根节点为第1层,根节点的子节点为第2层,以此类推。广度优先遍历的顺序就是从第1层到最后一层的顺序遍历,每一层内部从左到右遍历。

    例如对于上图的广度优先遍历顺序为 A B C D E F

  • 相关阅读:
    tmux 简明操作指南
    几种查看linux版本信息的方法
    安装Ruby&Rails遇到的问题
    安装DevKit
    gcc 编译选项
    EF数据操作详解
    值类型和引用类型的区别
    Class<T> where T:new() 含义
    50道高级sql练习题;大大提高自己的sql能力(附具体的sql)
    Entity framework 意外删除了表,如何在不影响其它表的情况下恢复回来
  • 原文地址:https://www.cnblogs.com/wqbin/p/11190908.html
Copyright © 2011-2022 走看看