当前位置: 首页 > news >正文

网站的构建一般要多久上海关键词优化报价

网站的构建一般要多久,上海关键词优化报价,alexa网站排名,app开发公司流程目录 1 基础知识2 模板3 工程化 1 基础知识 二分图中的最大匹配数:从二分图中选择一些边(这些边连接集合A和集合B,集合A中结点数目为n1,集合B中结点数目为n2),设为集合S,其中任意两条边不共用一…

目录

  • 1 基础知识
  • 2 模板
  • 3 工程化

1 基础知识

二分图中的最大匹配数:从二分图中选择一些边(这些边连接集合A和集合B,集合A中结点数目为n1,集合B中结点数目为n2),设为集合S,其中任意两条边不共用一个结点。求集合S的最大元素数目,即二分图中的最大匹配数。

匈牙利算法的关键步骤:

  1. 初始化匹配数组match[1~n2] = 0。其中match[b] = a,表示集合B中的结点b匹配了集合A中的结点a。
  2. 遍历集合A中的每一个结点a:初始化状态数组st[1~n2] = false,其中st[b] = false表示集合B中的结点b没有被访问。然后,find(x),如果它返回true,那么答案加1。
bool find(int a) {//a为集合A中的结点for (auto b : g[x]) {if (!st[b]) {//如果结点b没有被访问st[b] = true;if (match[b] == 0 || find(match[b])) { //如果结点b没有被匹配,或者结点b匹配了的结点可以找到新的match[b] = a;return true;}}}return false;
}
  1. 最终返回答案,即为该二分图的最大匹配数。

2 模板

int n1, n2;     // n1表示第一个集合中的点数,n2表示第二个集合中的点数
int h[N], e[M], ne[M], idx;     // 邻接表存储所有边,匈牙利算法中只会用到从第一个集合指向第二个集合的边,所以这里只用存一个方向的边
int match[N];       // 存储第二个集合中的每个点当前匹配的第一个集合中的点是哪个
bool st[N];     // 表示第二个集合中的每个点是否已经被遍历过bool find(int x)
{for (int i = h[x]; i != -1; i = ne[i]){int j = e[i];if (!st[j]){st[j] = true;if (match[j] == 0 || find(match[j])){match[j] = x;return true;}}}return false;
}// 求最大匹配数,依次枚举第一个集合中的每个点能否匹配第二个集合中的点
int res = 0;
for (int i = 1; i <= n1; i ++ )
{memset(st, false, sizeof st);if (find(i)) res ++ ;
}

3 工程化

题目1:求二分图的最大匹配。

#include <iostream>
#include <cstring>
#include <vector>using namespace std;const int N = 510;
int n1, n2, m;
vector<vector<int>> g(N);
int match[N];
bool st[N];bool find(int a) {for (auto b : g[a]) {if (!st[b]) {st[b] = true;if (match[b] == 0 || find(match[b])) {match[b] = a;return true;}}}return false;
}int main() {cin >> n1 >> n2 >> m;int a, b;while (m--) {cin >> a >> b;g[a].emplace_back(b);}int res = 0;for (int i = 1; i <= n1; ++i) {memset(st, 0, sizeof st);if (find(i)) res++;}cout << res << endl;return 0;
}
http://www.tj-hxxt.cn/news/100143.html

相关文章:

  • 深圳做二维码网站建设推销产品的万能句子
  • 商务网站开发工具不包括如何优化网络连接
  • 我爱南宁地铁app下载优化关键词的方法有哪些
  • 网站制作洋网络重庆网站seo建设哪家好
  • wordpress 侧 悬浮插件深圳seo推广公司
  • 微网站用手机可以做吗关键词快速排名怎么做
  • 网站的标准沈阳关键词seo排名
  • 如何dns解析网站最常见企业网站有哪些
  • 用dw做网站怎么给链接最热门的短期培训课程
  • 基于html5和css3网站开发论文竞价如何屏蔽恶意点击
  • 男和女做暖暖网站网站推广的途径和方法
  • 网站建设 东营远见网络公司深圳高端seo公司助力企业
  • 梅州市住房和城乡建设委员会网站第一推广网
  • 平凉哪有做网站的最新腾讯新闻
  • 深圳建网站的网络营销服务商有哪些
  • 广州做英文网站的公司网站权重
  • 石家庄做网站价格互联网营销师培训班
  • 杭州信贷网站制作百度的电话人工客服电话
  • 怎么样可以设计网站seoul是哪个国家
  • 瑞丽市建设局网站网站统计器
  • 网站建设 phpseo关键字优化软件
  • 织梦做的网站老是被黑有产品怎么找销售渠道
  • 手机做网站服务器seo关键词推广话术
  • 手机站电影聊城疫情最新消息
  • 主流建站开源程序有哪些东莞网络推广
  • 网龙沧州网站制作佛山seo教程
  • 私人让做彩票网站吗数据分析师培训机构
  • 全市政府网站建设常态化新浪微博指数查询
  • wordpress 企业 自适应安徽网络推广和优化
  • 免费下载一个app昆明seo工资