问题标签 [matchmaking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 是否有一种有效的算法来处理独特的个体,使他们中的任何一个人都没有见过彼此?
我目前正在寻求实现一种算法,它匹配给定的一组个体,并产生三个从未见过彼此的个体的组。到目前为止,我一直试图通过创建一个数组并为每个人分配一个素数(id)来实现这一点,该素数与另一个人的 id 相乘以在匹配时创建一个键。然后,这将用于连续匹配以消除再次匹配的可能性。到目前为止,这些组是通过简单地获取个人列表来形成的,从第一个开始,然后将该个人与列表中的第一个个人匹配,其 id 不划分密钥,然后删除该组。然而,这有时会导致一群人被遗弃,所以我想问一下是否已经存在解决这个问题的算法?