在下面的GoLang程序中,我尝试使用2 * N goroutine(每个男人和女人一个)来实现N个男人和N个女人的稳定婚姻问题。
当每个goroutine(读为"每个男人")通过通道向所需的女人goroutine发送消息时,该女人又会拒绝/接受他的建议,因此该程序会严格遵循程序定义。我希望程序可以在设置
而且,据我所知,并行实现所遵循的算法也是据此制定的(我使用了goroutines,因为我不知道如何使用MPI)。
如果可以的话,请随意建议其他实现方式(并行)。
上面的程序需要以下内容作为输入文件:https://drive.google.com/file/d/0B6jsnt965ZwrWlV1OE9LLVA1LUk/view?usp=sharing
我认为您提供的输入文件将花费程序读取大量时间(通过scanf每行)。