求kM算法和匈牙利算法程序代码

求kM算法和匈牙利算法程序代码

ID:34937044

大小:306.50 KB

页数:23页

时间:2019-03-14

求kM算法和匈牙利算法程序代码_第1页
求kM算法和匈牙利算法程序代码_第2页
求kM算法和匈牙利算法程序代码_第3页
求kM算法和匈牙利算法程序代码_第4页
求kM算法和匈牙利算法程序代码_第5页
资源描述:

《求kM算法和匈牙利算法程序代码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、求kM算法和匈牙利算法的程序代码kM算法和匈牙利算法的程序代码,最好是用matlab给出的,用c语言亦可。不要用其他的编程语言。//二分图最佳匹配,kuhnmunkras算法,邻接阵形式,复杂度O(m*m*n)//返回最佳匹配值,传入二分图大小m,n和邻接阵mat,表示权值//match1,match2返回一个最佳匹配,未匹配顶点match值为-1//一定注意m<=n,否则循环无法终止//最小权匹配可将权值取相反数#include#defineMAXN310#defineinf

2、1000000000#define_clr(x)memset(x,0xff,sizeof(int)*n)intkuhn_munkras(intm,intn,intmat[][MAXN],int*match1,int*match2){ints[MAXN],t[MAXN],l1[MAXN],l2[MAXN],p,q,ret=0,i,j,k;for(i=0;il1[i]?mat[i][j]:l1[i];f

3、or(i=0;i=0;j=p)match2[j]=k=t[j],p=

4、match1[k],match1[k]=j;}if(match1[i]<0){for(i--,p=inf,k=0;k<=q;k++)for(j=0;j

5、1[i]];returnret;} 昨天帮一个同学完成了他的毕业论文上的指派问题的匈牙利算法程序。以前他们跟我讲那算法的时候,他们就没讲清楚。现在回想起来他们说的匈牙利算法都是不完全正确的。因此以前我就在网上随便帮他们找了一个程序,可是发现那程序25行矩阵就会出问题,运行相当长时间,因为那不是用匈牙利算法解决的。     他们现在被老师逼了,一定要把结果弄出来,没办法了,我也只好认真看了一下匈牙利算法原理。最后选择了Excel的后台VBA程序来解决。通过一天的努力,这个匈牙利算法已经弄出来了。下面

6、就给出全部的代码。Java代码1.'=========================================  1.'作者:大漠.jxzhoumin  2.'=========================================  3.  4.Option Base 1  5.Public r As Integer  6.Public row_gou() As Integer  7.Public col_gou() As Integer  8.Public gou_min_n

7、um As Double  9.'=================================================  10.Public Function tj(lb) As Integer  11.     Dim k As Integer  12.     k = 2  13.     Do  14.         Set myR = Sheets(lb).Cells(k, 1)  15.         If Trim(myR.Value) = "" Then     '

8、出现空记录  16.            Exit Do  17.         End If  18.         k = k + 1  19.     Loop Until False  20.     tj = k - 1  21.End Function  22.'================================================  23.Private Sub CommandButton1_Click()  24.Applicatio

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。