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

  • 相关阅读:
    go 本地安装 grpc-go
    vscode python code-runner 中文乱码解决
    spring-cloud-sleuth 学习资源
    vscode 快键键资源整理
    vscode and python
    redis分布式锁
    TF-IDF算法解释
    spring 4.1 xml配置头部信息 maven配置信息
    google像apple 30亿美元购买流量
    spring 启动异常Failed to read candidate component class
  • 原文地址:https://www.cnblogs.com/wqbin/p/11190908.html
Copyright © 2011-2022 走看看