美文网首页数据结构和算法分析程序员笔试相关知识笔试&&面试经验
【程序员笔试】昨天花了两个小时,今早一个小时整理的 树 笔试相关

【程序员笔试】昨天花了两个小时,今早一个小时整理的 树 笔试相关

作者: supermans1202 | 来源:发表于2018-07-18 09:18 被阅读1次

算法+数据结构+树 按照复习顺序记录 2018年07月18日``09:11

  1. 遍历
  2. 转2叉
  3. 具体应用

------- 1

  • 二叉树的前序遍历、中序遍历、后序遍历。层次遍历。
  • 层次:
    按照树的层次结构,从上到下。
  • 前序:
    deal() 
    递归(左节点)
    递归(右节点)
    
  • 中序:
    递归(左节点)
    deal() 
    递归(右节点)
    
  • 后序:
    递归(左节点)
    递归(右节点)
    deal() 
    
  • 脑中模拟调用过程即可
    • 前序:根[左子树][右子树]
    • 中序:[左子树]根[右子树]
    • 后序:[左子树][右子树]根
    • 所以根据 ‘前+中’ ,‘后加中’ 是可以推算出树的结构
    • 所以将树线索化之后,‘前后’ 只有一个节点为null(因为根在首或尾),‘中’ 有两个。线索化就是将树的叶子节点的左右节点指向其某种遍历下的前后继节点。

---- 2
n树 转为2叉树
右边兄弟添加连线,转化为右子节点。
森林同。

  • 会有分析转化前后的节点关系的,如:
    • 节点有左节点,则该节点的中序前继没有右子节点
    • 转换后节点A是节点B的父节点的父节点,则转换前?
      • A是B的父节点,则转换器可能是 B是A的左子节点,B是A右边第一个兄弟。
      • A是B的父节点的父节点,则B是A的左子节点的左子节点,B是A的左子节点的右边第一个兄弟,B是A右边第一个兄弟的左子节点,B是A右边第二个兄弟。
      • 根据上面一条具体分析
    • 有序树转换后 前序等于 转换前 前序; 中序等于 转换前 后序。
      • 因为前序 递归调用右子节点时,次序没有变化
      • 因为中序 递归调用 根 右时,就是转换前的 左、兄弟、兄弟...
      • 转换前没有中序。

----- 3
树的度:子节点个数

  • 出度等于入度。据此可计算节点数。特别对于二叉树,2x+y+z*0=x+y+z-1,可得x=z-1;即 ‘出度为2的节点个数’ 为 ‘叶子节点数’ - 1。

---- 4

查找二叉树:左子树、右子树均小于根,且都为查找。

  • 构造方法:比较插入即可
  • 查找效率:nlgn,最差是链表为 n。
  • 查找序列:5,1,4,6是不合理的,因为6只会出现在5的右子树,而非1,4下代表的左子树。

平衡二叉树 :左右子树高度差小于1,且对左右子树也是如此。

  • 构造尽可能平衡的二叉树: 红黑树

哈夫曼树:哈夫曼编码,频率加权最小。频率越大根节点越近。

  • 构造方法:森林,每次取最小两个。

红黑树:平衡二叉树的一种实现。

  • 待细看

B树:磁盘。

  • 待细看

  • 创作人:李盟
  • 微信:supermans1201
  • 创作时间:2018年7月18日
  • 转载和使用请联系本人获得授权后并标明创作人,微信,时间还有此条。

相关文章

  • 【程序员笔试】昨天花了两个小时,今早一个小时整理的 树 笔试相关

    算法+数据结构+树 按照复习顺序记录 2018年07月18日``09:11 遍历 转2叉 度 具体应用 ----...

  • PHP面试相关知识树

    以下是自己根据《PHP程序员面试笔试宝典》、《PHP程序员面试笔试真题解析》书籍整理到的一些关于PHP面试相关的知...

  • 斗鱼面试-C++研发工程师

    斗鱼面试-c++研发工程师 笔试 现场笔试,2个小时 技术面: 1:两个面试官,对着笔试卷子提问 2:类中的函数地...

  • 某游戏彩票外企Java笔试题

    第一轮笔试 笔试形式:paper test题目难易程度:中等笔试时间:1个小时笔试语言:题目和答题全部用英文 1 ...

  • 目录

    计算机网络【程序员笔试】计算机网络【程序员笔试】+计算机网络+TCP 数据库【程序员笔试】数据库范式【程序员笔试】...

  • 培训

    昨天进的电子厂培训。其实也就三小时多吧,其中也包括笔试。培训的内容是关于笔试的,笔试没有八十分不能进入电子厂。培训...

  • 关于面试后等通知那些事

    昨天去笔试,笔试之后宣讲,听宣讲会的时候收到通知说面试,等了一个多小时才轮到我面试。 面试让自我介绍,简单自我评价...

  • 新书出版 |《数据库程序员面试笔试宝典》

    新书出版 |《数据库程序员面试笔试宝典》 新书出版 |《数据库程序员面试笔试宝典》 书名: 数据库程序员面试笔试宝...

  • 新书出版 |《数据库程序员面试笔试真题库》

    新书出版 |《数据库程序员面试笔试真题库》 新书出版 《数据库程序员面试笔试真题库》 书名: 数据库程序员面试笔试...

  • 【随笔】‖认真的问自己

    昨天晚上花了近两个小时,今天一早又花了近两个小时总计花了四个小时读了几篇简书上的长文。 最长的有一万多字。 不是第...

网友评论

    本文标题:【程序员笔试】昨天花了两个小时,今早一个小时整理的 树 笔试相关

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