Случайный выбор лидера после каждого раунда
Я работаю в системе, где мне нужно выбрать лидера (из n узлов) случайным образом. Лидер будет меняться после каждого раунда (после того, как текущий лидер завершит свою задачу). Все узлы будут общаться друг с другом.
Переизбрание будет проходить в двух условиях:
- Раунд закончен.
- Лидер умирает преждевременно.
Есть ли реализации этой идеи для справки. Это хорошая идея? Зачем? Стоит ли подходить к этой ситуации по-другому?
1 ответ
Насколько я понял ваш вопрос, вам нужно выбирать другого лидера из ваших узлов Каждый раз, чтобы сделать это, вы можете поместить все узлы в очередь, а затем найти длину очереди и сгенерировать случайное число от 0 до длины очереди. и назовите узел с этим индексом в качестве лидера, когда он умрет или завершит свою работу. Вы можете удалить этот узел из очереди и переизбрать своего лидера тем же процессом. Теперь длина на 1 меньше. Надеюсь, я правильно понял вопрос.