欢迎来到天天文库
浏览记录
ID:57580608
大小:36.50 KB
页数:7页
时间:2020-08-27
《稳定婚姻算法.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、稳定婚姻算法稳定婚姻算法实验目的:1.理解迭代改进基本原理;2.掌握稳定婚姻算法;实验平台:MicrosoftVisualC++6.0实验过程:1.编程实现稳定婚姻算法:#includeusingnamespacestd;voidmain(){intn,i,j;int***A=newint**[100];for(i=0;i<100;i++){A[i]=newint*[100];for(j=0;j<100;j++)A[i][j]=newint[2];}//输入等级矩阵cout<<"请输入等级矩阵的行列数:";cin>>n;cout<<"
2、请输入"<>A[i][j][0];cin>>A[i][j][1];}//输出等级矩阵cout<3、4、的优先列表if(A[k][i][1]==m)Woman[i][0][j]=k;//记录第i个女性的优先列表}m++;Man[i][2][j]=0;//记录第i个男性是否已和第j个女性配对Woman[i][2][j]=0;//记录第i个女性是否已和第j个男性配对}}//输出优先列表for(i=0;i5、稳定婚姻算法for(j=0;j6、7、(w!=n)){m=0,w=0;if(Man[k][1][0]==0){//cout<<"============================"<8、先列表的第j个if(Woman[man][1][0]==0){Man[k][2][man]=1;//第k个男性与第Man[k][0][j]个女性配对Man[k][1][0]=1;//标记第k个男性已配对Woman[man][2][k]=1;//第Man[k][0][j]个女性与第k个男性配对Woman[man][1][0]=1;//标记第Man[k][0][j]个女性已配对//cout<<"ok"<9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
3、4、的优先列表if(A[k][i][1]==m)Woman[i][0][j]=k;//记录第i个女性的优先列表}m++;Man[i][2][j]=0;//记录第i个男性是否已和第j个女性配对Woman[i][2][j]=0;//记录第i个女性是否已和第j个男性配对}}//输出优先列表for(i=0;i5、稳定婚姻算法for(j=0;j6、7、(w!=n)){m=0,w=0;if(Man[k][1][0]==0){//cout<<"============================"<8、先列表的第j个if(Woman[man][1][0]==0){Man[k][2][man]=1;//第k个男性与第Man[k][0][j]个女性配对Man[k][1][0]=1;//标记第k个男性已配对Woman[man][2][k]=1;//第Man[k][0][j]个女性与第k个男性配对Woman[man][1][0]=1;//标记第Man[k][0][j]个女性已配对//cout<<"ok"<9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
4、的优先列表if(A[k][i][1]==m)Woman[i][0][j]=k;//记录第i个女性的优先列表}m++;Man[i][2][j]=0;//记录第i个男性是否已和第j个女性配对Woman[i][2][j]=0;//记录第i个女性是否已和第j个男性配对}}//输出优先列表for(i=0;i5、稳定婚姻算法for(j=0;j6、7、(w!=n)){m=0,w=0;if(Man[k][1][0]==0){//cout<<"============================"<8、先列表的第j个if(Woman[man][1][0]==0){Man[k][2][man]=1;//第k个男性与第Man[k][0][j]个女性配对Man[k][1][0]=1;//标记第k个男性已配对Woman[man][2][k]=1;//第Man[k][0][j]个女性与第k个男性配对Woman[man][1][0]=1;//标记第Man[k][0][j]个女性已配对//cout<<"ok"<9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
5、稳定婚姻算法for(j=0;j6、7、(w!=n)){m=0,w=0;if(Man[k][1][0]==0){//cout<<"============================"<8、先列表的第j个if(Woman[man][1][0]==0){Man[k][2][man]=1;//第k个男性与第Man[k][0][j]个女性配对Man[k][1][0]=1;//标记第k个男性已配对Woman[man][2][k]=1;//第Man[k][0][j]个女性与第k个男性配对Woman[man][1][0]=1;//标记第Man[k][0][j]个女性已配对//cout<<"ok"<9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
6、
7、(w!=n)){m=0,w=0;if(Man[k][1][0]==0){//cout<<"============================"<8、先列表的第j个if(Woman[man][1][0]==0){Man[k][2][man]=1;//第k个男性与第Man[k][0][j]个女性配对Man[k][1][0]=1;//标记第k个男性已配对Woman[man][2][k]=1;//第Man[k][0][j]个女性与第k个男性配对Woman[man][1][0]=1;//标记第Man[k][0][j]个女性已配对//cout<<"ok"<9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
8、先列表的第j个if(Woman[man][1][0]==0){Man[k][2][man]=1;//第k个男性与第Man[k][0][j]个女性配对Man[k][1][0]=1;//标记第k个男性已配对Woman[man][2][k]=1;//第Man[k][0][j]个女性与第k个男性配对Woman[man][1][0]=1;//标记第Man[k][0][j]个女性已配对//cout<<"ok"<9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
9、<10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
10、dl;//测试时输出当前伴侣和当前配对男性的序号//cout<<"nowp="<
此文档下载收益归作者所有