2015-10-14 7 views
0

Я пытаюсь заполнить базу данных образцами данных, и я надеюсь, что есть алгоритм, способный ускорить этот процесс.Создание случайных перекрывающихся групп

У меня есть база данных образцов людей, и мне нужно создать образец сети друзей. Например, человек 1 может быть друзьями с человеком 2,3,4 и 7, а человек 2, очевидно, будет дружить с человеком 1, но не обязательно с кем-либо из других.

Я надеюсь найти способ автоматизировать процесс создания этих случайно сгенерированных списков друзей в определенных параметрах, таких как минимальное и максимальное количество друзей.

Что-то вроде этого существует или кто-то может указать мне в правильном направлении?

ответ

0

Так что я не, если это идеальное решение, но это сработало для меня. Обычно этапы были следующими:

Начать с массива людей.

Скопируйте массив и перетасуйте его.

Дайте каждому человеку в первом массиве случайное число (в пределах диапазона) случайных друзей (второй массив).

Удалить человека из своего списка друзей.

Итерации через каждого человека в каждом списке друзей и посмотреть, находится ли владелец списка в списке своих друзей, а если нет, добавьте его.

Я использовал пул из 1000 человек, с начальным диапазоном друзей 3-10, и после добавления возвратов итоговое среднее значение было около 5-27, что было достаточно для меня.

Смежные вопросы