emm,我最近在学习二叉树,想通过写博客来记录一下最近学习的知识点,也希望对大家有一些帮助。 typedef int TElemType; 结构体定义 typedef struct BiNode { TElemType …
分类:树
完全二叉树的节点个数 Count Complete Tree Nodes
2018-09-25 16:36:25 问题描述: 问题求解: 单纯遍历了一遍,emmm,果然TLE。 解题思路就是比较左边树高度和右边树高度,如果相等,那么就是一个满二叉树,返回1 << h –…
epoll--源码剖析
1.epoll_create() 在内核创建一个事件表,事件表用文件表示。所以epoll_create()返回的是一个文件描述符。主要源代码: asmlinkage long sys_epoll_create(int s…
【IT笔试面试题整理】判断一个二叉树是否是平衡的?
【试题描述】定义一个函数,输入一个链表,判断链表是否存在环路 平衡二叉树,又称AVL树。它或者是一棵空树,或者是具有下列性质的二叉树:它的左子树和右子树都是平衡二叉树,且左子树和右子树的高度之差之差的绝对值不超过1。 问…
leetcode链表--2、排序链表转平衡二叉树
题目描述 Given a singly linked list where elements are sorted in ascending order, convert it to a height ba…
平衡二叉树 AVL
笔记: 1、 在包含有n个结点的平衡树上查找的时间复杂度为 O(log n),深度也和O(log n)同数量级。 在平衡树上进行查找的过程和排序树相同,因此,在查找过程中和给定值进行比较的关键字个数不超过树的深度。 2、…
lintcode---将二叉查找树转换成双链表
题目描述: 将一个二叉查找树按照中序遍历转换成双向链表。 样例: 给定一个二叉查找树: 4 / \ 2 5 / \ 1 3 返回 1<->2<->3<->4<->5。 思路…
[itint5]完全二叉树节点个数的统计
http://www.itint5.com/oj/#4 这题是利用完全二叉树的性质计算节点数目。那么是通过比较左右子树的最左结点的高度来看那边是满的,然后递归计算。 //使用getLeftChildNode(TreeNo…
红黑树的理解--TreeMap中的具体实现
(关于左旋,右旋,还有具体的图解,举例和细节。推荐一篇博客 史上最清晰的红黑树讲解(上) – CarpenterLee – 博客园 https://www.cnblogs.com/Carpente…
关于TreeMap的个人理解
群里的大哥说了,要想懂红黑树的应用,先要看TreeMap。 想要解锁更多新姿势?请访问http://blog.tengshe789.tech/ OK,现在开始: 红黑树简介 红黑树又称红-黑二叉树,它首先是一颗二叉树,它…
Java中的Map
Map散列表 HashMap与LinkedHashMap 这2个Map是我们最常见的map。LinkedHashMap内部使用了双向链表来维护元素的顺序,所以遍历的时候取出来的元素顺序和插入顺序一致,而HashMap就不…
剑指offer 平衡二叉树 python
题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 样例 如果是 返回True 如果不是 返回False 想法一: 遍历节点,计算左右子树的高度,在计算同时,如果有子树不符合平衡二叉树,则返回-1,这样不需要遍历所…