- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 Leetcode每日一题851.喧闹和富有
Leetcode每日一题851.喧闹和富有问题描述分析问题描述有一组 nnn 个人作为实验对象,从 000 到 n−1n - 1n−1 编号,其中每个人都有不同数目的钱,以及不同程度的安静值(quietness)。为了方便起见,我们将编号为xxx 的人简称为 "person x "。给你一个数组 richerricherricher ,其中 richer[i]=[ai, bi]richer[i] = [a_i,~b_i]richer[i]=[ai, bi] 表示 person&
2021-12-15 15:17:57 261
原创 Python-匈牙利算法求二部图的最大匹配
hyi ascfrom collections import defaultdictimport timeclass Graph: def __init__(self,n,s,t,l) -> None: self.S,self.T,self.L=s,t,l # 源s,汇t self.edge=defaultdict(list) # 边集 self.ver_high=[0 for i in range(n)] # 每个顶点的高度
2020-11-14 00:24:49 616
原创 最高标号预流推进算法
@TOC最高标号预流推进算法最高标号预流推进算法from queue import Queuefrom queue import PriorityQueueclass graph: def __init__(self,_s,_t,_m): # 源,汇,顶点个数 self._edge={} self.s=_s # 源 self.t=_t # 汇 self.num=_m # 顶点个数 self.level=[-1 f
2020-07-30 11:51:38 312
原创 Leetcode-410.分割数组的最大值
分割数组的最大值前言今天Leetcode推荐给一打七一道难度为困难的题,一打七看了迅速秒杀 ,决定写一篇题解。题目题目点击这里给定一个非负整数数组和一个整数 mmm,你需要将这个数组分成 mmm 个非空的连续子数组。设计一个算法使得这 mmm 个子数组各自和的最大值最小。注意:数组长度 nnn 满足以下条件:1≤n≤10001 ≤ n ≤ 10001≤n≤10001≤m≤min(50,n)1 ≤ m ≤ min(50, n)1≤m≤min(50,n)示例:输入: nums=[7,
2020-07-25 17:44:24 145
原创 Python解决最短路径问题—Dijkstra算法+堆优化
Python解决最短路径问题—Dijkstra算法+堆优化最短路问题介绍Dijkstra算法介绍算法思想Dijkstra算法步骤代码宇智波一打七今天学习了一个新算法,迫不及待和大家分享一下 。最短路问题介绍在一个赋权图中,从一个顶点出发到达另外一个顶点的路的权和最小的路径,称为最短路径。Dijkstra算法是解决这一问题的经典算法,接下来我们介绍如何用python实现这一算法。Dijkstra算法介绍Dijkstra算法由Dijkstra在1959年发现,这个算法不仅找到了最短的 (u0,v0)(
2020-07-23 16:53:26 3794 9
原创 Dinic算法(C语言)
网络最大流---Dinic前言介绍网络流剩余网络最大流最小割定理Dinic算法步骤代码前言新手第一次写博客,刚好这几天学习了一个新算法Dinic算法,就拿它练手吧,多多包涵。介绍Dinic算法是用来解决网络最大流问题的一个经典算法,基于EK算法的优化算法,时间复杂度为O(n2m)O(n^2m)O(n2m)。Dinic算法与EK算法不同的是先使用BFS对剩余网络进行分层,构造层次图,在层次图中进行DFS寻找增广路,更新层次图直至剩余网络中没有增广路。网络流一个网络是指一个有向图D=(V,A)D=(
2020-07-15 18:44:50 1188 1
简单的太阳系模型.zip
2020-07-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人