匈牙利算法-DFS
1 bool dfs(int u){ 2 for(int i = 1; i <= n; i++){ 3 if(a[u][i] && !visit[i]){ 4 visit[i] = true; 5 if(match[i] == -1 || dfs(match[i])){ 6 match[i] = u; 7 } 8 return true; 9 }r 10 } 11 return false; 12 }
匈牙利算法-DFS
1 bool dfs(int u){ 2 for(int i = 1; i <= n; i++){ 3 if(a[u][i] && !visit[i]){ 4 visit[i] = true; 5 if(match[i] == -1 || dfs(match[i])){ 6 match[i] = u; 7 } 8 return true; 9 }r 10 } 11 return false; 12 }
相关文章: