在一个小型体育场内,看台上有数千人.设计分布式算法
使观众能够统计自己.不要假设体育场的任何特定几何形状,除非你想要,它是碗形的.明确说明您的假设,然后展示您的算法和分析
使观众能够统计自己.不要假设体育场的任何特定几何形状,除非你想要,它是碗形的.明确说明您的假设,然后展示您的算法和分析
我假设成员是一个链接列表并附加计数器和免费(ptr)..我可能是错的…请提供一些有用的见解
谢谢你…
解决方法
假设每个人都可以和他/她的邻居(可能在许多空座位上)交谈并且A队的球迷愿意与B队的球迷交谈,以下情况可能会奏效:
每个人都抓住他/她最近的邻居,这个邻居还没有被其他人抓住,最多组成两人组.现在每个人都记得他们所在群体的大小(可以是1或2).现在,每个组的领导者都以他能够与另一个组的成员进行交流的方式进行选择.每个小组的领导者都试图加入他们的小组,两个小组(现已加入)的每个成员都会记住每个小组成员的总和(这可以通过广播要添加到小组中的新值来完成) .此过程将继续,直到只剩下一个组.在此过程终止后,每个人都知道体育场内的人数.
希望这可以帮助.