穩定匹配演算法 C 語言實現 框架

2021-07-27 15:36:23 字數 1001 閱讀 4631

給定 n

個男人,

n個女人,每個男人都有一張對所有女人的偏愛表,每個女人都有一張對所有的男人的偏愛表,要求設計一演算法,產生一穩定匹配。

匹配過程:

初始化所有的男人和女人都是自由的

while(存在男人 m是自由的且還沒對每個女人都求過婚)

選擇這樣乙個男人m

令w 是m 的優先表中m 還沒求過婚的最高排名的女人

if w是自由的

(m,v)變成約會狀態

else w當前與 m』約會

if w更愛 m』(對比m)

m保持自由

else w更愛 m(對比 m』)

(m,v)變成約會狀態

m』變成自由

endif

endif

endwhile

**框架:

// author: zhang yushan

#include #include #define person 4

#define true 1

#define false 0

// predilecations

char *maletable[4][4][2] = ,, , },

,, , },

,, , },

,, , }

};char *femalet[4][2] = ;

int couple[4][4]=;

int satisfied(int man)

if (maletable[man][j][1] == false)

} if ( isfree && !proposed) return false;

else return true;

}int main(int argc, char *argv)

} printf("compare\n");

return 0;

}

括號匹配(c語言實現)

我的 www.mengyingjie.com 編寫程式檢查該字串的括號是否成對出現,而且不能交叉出現。輸入 乙個字串,裡邊可能包含 三種括號,結束 輸出 成功 代表括號成對出現並且巢狀正確 失敗 未正確使用括號字元。include include define stack int size 100 ...

GS穩定匹配演算法的實現C

演算法導論課的課程作業 include using namespace std 是否有單身的男人的判斷函式 bool man free bool man state,int n,int index return false 該男人是否和所有女人求過婚 bool man no date bool ma...

C語言實現穩定的快排

關於這種穩定的快排的思路,請看我之前的這篇文章 對數器 python實現穩定快排 下面是實現 include include include intsplit char str,int datalist 20 const char separator return n void quicklysor...