匈牙利算法,求最大匹配数即最小顶点覆盖
来源:互联网 发布:php软件工程师 编辑:程序博客网 时间:2024/06/05 20:04
#include <iostream>using namespace std;#define N 10//是否存在连线bool edge[N][N];//配对集,-1表示为配对,其他为配对下标int y[N];//配对元素是否已访问bool visited[N];void init() {memset(edge, false, sizeof(bool) * N * N);edge[0][0] = edge[0][1] = edge[0][3] = true;edge[1][1] = edge[1][4] = true;edge[2][0] = edge[2][3] = edge[2][6] = true;edge[3][2] = edge[3][3] = edge[3][5] = true;edge[4][3] = true;edge[5][3] = true;}int path(int u, int xlen) {for (int i = 0; i < xlen; ++i) {if (edge[u][i] && !visited[i]) {visited[i] = true;if (y[i] == -1 || path(y[i], xlen)) {y[i] = u;return 1;}}}return 0;}int maxmatch(int xlen) {int res = 0;memset(y, -1, sizeof(int) * xlen);for (int i = 0; i < xlen; ++i) {memset(visited, 0, sizeof(bool) * xlen);if (path(i, xlen)) {res++;}}return res;}int main() {init();cout << "result: " << maxmatch(N) << endl;return 0;}
1 0
- 匈牙利算法,求最大匹配数即最小顶点覆盖
- HDU 1150 Machine Schedule (匈牙利算法 最小顶点覆盖= 最大匹配数)
- poj3041 最小点覆盖即最大匹配(匈牙利算法)(模板)
- poj3020 匈牙利算法+公式:二分无向图的最小路径覆盖 = 顶点数 - 最大二分匹配数 / 2
- 匈牙利算法 hdu 1151有向图的最小路径覆盖=顶点数-最大匹配数
- uva11419 【最大二分匹配求最小点覆盖 匈牙利算法】
- POJ3041 最小点覆盖 最大匹配数 回顾匈牙利算法
- POJ3692——Kindergarten (二分图求最小顶点覆盖 (即最大匹配))
- HDU 2063 过山车(匈牙利算法 二分图的最小顶点覆盖 二分图最大匹配)
- poj 1325 Machine Schedule(最小点覆盖即最大匹配,匈牙利算法)
- HDU-1150(求最小覆盖顶点数=二分最大匹配数)
- 彻底搞定二分图的匈牙利算法,最大匹配数(最小覆盖数)、最大独立数、最小路径覆盖
- POJ3041《Asteroids》方法:匈牙利算法(最小点覆盖数==最大二分匹配数)
- HDU 1150 Machine Schedule(匈牙利算法 二分图的最小顶点覆盖 二分图最大匹配)
- poj3041_匈牙利算法_二分图最小覆盖点(最大匹配数)
- 模板_matlab 匈牙利算法(最大匹配数/最小覆盖点)
- POJ 3041 匈牙利算法 最小覆盖 最大二分匹配
- poj 3020 最小边覆盖与最大匹配 匈牙利算法
- 不容易系列之(4)――考新郎
- html+js+jquary完成的五星评分(评价效果demo)
- PAT乙级1035
- Android 低功耗蓝牙(BLE)开发(4)-- 蓝牙扫描和连接
- PicoContainer基础介绍
- 匈牙利算法,求最大匹配数即最小顶点覆盖
- leetcode oj java 309. Best Time to Buy and Sell Stock with Cooldown
- JZOJ 3822. 【NOIP2014模拟9.9】逆光
- SYSZUXpinyin中文输入法的移植(到QT)
- 每天一个 Linux 命令(33):df 命令
- slab源码分析--主要数据结构分析
- Java多线程(5)——生产者消费者模式实践
- 笔记本无法上网的解决方法
- jquary实现的动态添加表格效果