
算法讲解
文章平均质量分 90
ZH_qaq
More and more vegetables,what should I do?
展开
-
算法讲解—最小生成树(Kruskal 算法)
根据度娘的解释我们可以知道,最小生成树(Minimum Spanning Tree, MST)就是:一个有n个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有n个结点,并且有保持图连通的最少的边。简单点来说就是求最小的连通图,就是从一个点能到达图的任意一点,且花费的代价最小(所有边的权值最小)。最小生成树问题通常用于网络设计、电路设计等领域,目的是找到连接所有节点的最低成本方式。常见的算法有克鲁斯卡尔算法(Kruskal)和普里姆算法(Prim)等。原创 2024-10-05 19:23:25 · 1588 阅读 · 0 评论 -
线段树空间开四倍的证明
线段树通常分为两个部分:节点和指针。每个节点代表区间的值,需要存储两个关键信息:区间的起始和结束位置。个节点,因为每一层的节点数都是上一层的一倍。对于每一个节点,我们需要额外的指针来链接左右孩子,这又增加了。所有其他层级(从第1层到第k层):(2n - 2) * k (因为除了根节点剩下的k-1层)这里的“接近”是因为实际计算中会舍去常数项,但直观上可以认为线段树数组占用的空间大约是。线段树数组通常用于高效地支持区间查询和修改操作,它的空间复杂度通常是。随着层数增加,每次翻倍。所以,对于每层,我们有。原创 2024-09-26 16:16:26 · 492 阅读 · 0 评论