算法|刷了三个月leetcode算法,顺利拿下百度、阿里等大厂的offer( 三 )
完全二叉树:若设二叉树的深度为h , 除第 h 层外 , 其它各层 (1~(h-1)层) 的结点数都达到最大个数 , 第h层所有的结点都连续集中在最左边 , 这就是完全二叉树;
满二叉树是完全二叉树的一个特例 。
二叉查找树
二叉查找树 , 又称为是二叉排序树(Binary Sort Tree)或二叉搜索树 。 二叉排序树或者是一棵空树 , 或者是具有下列性质的二叉树:
- 若左子树不空 , 则左子树上所有结点的值均小于它的根结点的值;
- 若右子树不空 , 则右子树上所有结点的值均大于或等于它的根结点的值;
- 左、右子树也分别为二叉排序树;
- 没有键值相等的节点 。
【算法|刷了三个月leetcode算法,顺利拿下百度、阿里等大厂的offer】平衡二叉树
平衡二叉树又被称为AVL树 , 具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1 , 并且左右两个子树都是一棵平衡二叉树 。 它的出现就是解决二叉查找树不平衡导致查找效率退化为线性的问题 , 因为在删除和插入之时会维护树的平衡 , 使得查找时间保持在O(logn) , 比二叉查找树更稳定 。
堆
堆是一颗完全二叉树 , 在这棵树中 , 所有父节点都满足大于等于其子节点的堆叫大根堆 , 所有父节点都满足小于等于其子节点的堆叫小根堆 。 堆虽然是一颗树 , 但是通常存放在一个数组中 , 父节点和孩子节点的父子关系通过数组下标来确定 。
堆的用途:堆排序 , 优先级队列 。 此外由于调整代价较小 , 也适合实时类型的排序与变更 。
最后写着写着就发现要想总结到位是一项非常庞大的工程 , 路漫漫其修远兮 , 吾将上下而求索 。
我个人认为 , 作为技术人就要保持终生学习的态度 , 让学习力成为核心竞争力 , 才能不被时代所淘汰 , 而高效的时间支配能让你变得更加优秀 , 所以 , 我在这里将这份耗时两个月搜集的算法刷题书籍 , 送给有需要的人 , 希望这些资料能对大家有所帮助
《算法的乐趣》
《算法》
《算法刷题Leetcode版》
如何获取免费架构学习资料?
资料获取方式:
关注+转发后 , 私信关键词 【资料】即可免费获取!
- 苹果|华为新一代“小方表”来了:Watch FIT 2正式官宣
- 小米|小米最强影像旗舰!小米12S系列海报泄密:徕卡标变白了
- 京东|裁员不忘膈应人,这家互联网大厂送的离职礼物恶心到我了!
- 跑分|vivoS16Pro选用9000芯片,103万高跑分+1亿像素,配置崛起了
- 投资|14万股东懵了!宁德时代刚募资450亿 就拿230亿买理财
- 有人觉得中暑就是热出来的,吃一些退烧药就好了,这种做法 蚂蚁庄园今日答案6月28日
- 华为|意识到离不开中国了?外媒称华为、中兴或将重新打入美国市场
- 微信又放大招!孩子乱支付难了
- 卫星拍摄下的南极洲,专家发现神秘骨架:人类又发现了史前物种
- 土耳其发现四肢爬行人群,这是咋回事?科学家警告:人类要留心了
