摘要:
1 如何理解堆? 堆是一种特殊的树。只要满足以下两点,它就是一个堆: 堆是一个完全二叉树; 堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。 第一点,堆必须是一个完全二叉树。还记得我们之前讲的完全二叉树的定义吗?完全二叉树要求,除了最后一层,其他层的节点个数都是满的,最后一层的节 阅读全文
posted @ 2020-08-06 17:05
程序员曾奈斯
阅读(598)
评论(0)
推荐(0)
摘要:
1 求解思路 全排列表示把集合中元素的所有按照一定的顺序排列起来,使用P(n, n) = n!表示n个元素全排列的个数。P(n, n)中的第一个n表示元素的个数,第二个n表示取多少个元素进行排列。 给定一个n个元素数组,其全排列的过程可以描述如下: 任意取一个元素放在第一个位置,则有n种选择; 再剩 阅读全文
posted @ 2020-08-06 12:45
程序员曾奈斯
阅读(548)
评论(0)
推荐(0)
摘要:
前言 二叉查找树是最常用的一种二叉树,它支持快速插入、删除、查找操作,各个操作的时间复杂度跟树的高度成正比,理想情况下,时间复杂度是O(logn)。 不过,二叉查找树在频繁的动态更新过程中,可能会出现树的高度远大于log2n 的情况,从而导致各个操作的效率下降。极端情况下,二叉树会退化为链表,时间复 阅读全文
posted @ 2020-08-06 09:46
程序员曾奈斯
阅读(1434)
评论(0)
推荐(0)
摘要:
高度(Height)、深度(Depth)、层(Level)。它们的定义是这样的: 阅读全文
posted @ 2020-08-06 08:58
程序员曾奈斯
阅读(411)
评论(0)
推荐(0)

浙公网安备 33010602011771号