最新 最热

【C++进阶】红黑树

红黑树(Red-Black Tree)是一种自平衡的二叉搜索树,用于保持树的平衡,以确保在最坏情况下基本操作(如插入、删除和查找)的时间复杂度仍为 O(log n)。红黑树的每个节点都包含一个额外的颜色位,即红色或黑色。红黑树通过严格的...

2024-10-09
7

【深入C++】二叉搜索树

二叉搜索树(Binary Search Tree, BST)是一种特殊的二叉树,其每个节点最多有两个子节点,分别称为左子节点和右子节点。BST具有以下性质:

2024-10-09
7

数据结构之红黑树的 “奥秘“

这里我们要围绕红黑树上面的几条性质构建红黑树;但是红黑树是在二叉搜索树的基础上加上其平衡限制条件,所有我们构建时可以借鉴二叉搜索树方式。...

2024-10-09
4

数据结构之AVL树的 “奥秘“

1. 为了AVL树实现简单,AVL树节点在定义时维护一个平衡因子,具体节点定义如下:

2024-10-09
5

【数据结构与算法】红黑树

普通二叉搜索树插入、删除、查询的时间复杂度与树的高度相关,因此在最坏情况下,时间复杂度为O(n),而且容易退化成链表,查找效率低。

2024-10-02
2

【C++】模拟实现AVL树

通过第二部分对项目功能的介绍,我们已经对 的功能有了大致的了解,虽然看似需要实现的功能很多,貌似一时间不知该如何下手,但我们可以分步分模块来分析这个项目的流程,最后再将各部分进行整合,所以大家不用担心,跟着我一步一...

2024-10-01
2

文心一言 VS 讯飞星火 VS chatgpt (343)-- 算法导论23.2 2题

一、对于同一个输入图,Kruskal算法返回的最小生成树可以不同。这种不同来源于对边进行排序时,对权重相同的边进行的不同处理。证明:对于图G的每棵最小生成树T,都存在一种办法来对G的边进行排序,使得Kruskal算法所返回的最...

2024-09-12
3

文心一言 VS 讯飞星火 VS chatgpt (342)-- 算法导论23.2 1题

一、对于同一个输入图,Kruskal算法返回的最小生成树可以不同。这种不同来源于对边进行排序时,对权重相同的边进行的不同处理。证明:对于图G的每棵最小生成树T,都存在一种办法来对G的边进行排序,使得Kruskal算法所返回的最...

2024-09-12
3

文心一言 VS 讯飞星火 VS chatgpt (339)-- 算法导论23.1 8题

要证明对于图G的任何其他最小生成树T',列表L(作为树T的边权重有序列表)也是T'中一个边权重的有序列表,我们可以从最小生成树的定义和性质出发。...

2024-09-06
3

文心一言 VS 讯飞星火 VS chatgpt (338)-- 算法导论23.1 7题

连接所有结点的最小权重边集合是{AB, BC, CD, DA},总权重为-5(注意DA边的权重是负的)。然而,这个边集合形成了一个环(ABCDA),并不是一个树。

2024-09-06
3