Социальная сеть «ВКонтакте» отмечает свое 12-летие – в связи с этим она дает возможность проверить, через сколько рукопожатий ты знакома с известными персонами. Построй связь с более чем 200 знаменитостями из различных сфер: блогерами, музыкантами, актерами, спортсменами, юмористами и бизнесменами.
К примеру, можно узнать, кто из друзей связывает тебя с Иваном Рудским, Алексеем Навальным, Юрием Дудем, Данилой Поперечным, Катей Клэп, Монеточкой или Оксимироном.
Приложение можно оценить по ссылке.
ВКонтакте взяла за основу недоказанную теорию 6 рукопожатий, сторонники которой верят, что любые 2 человека на земле разделены не более, чем 5 знакомыми.
А сколько «рукопожатий» у тебя с твоей любимой звездой?
Ася Жданова
Материалы по теме
Общайся и следи за новостями 😉
- О проекте
- Реклама
- Пользовательское соглашение
- Условия проведения конкурсов
- Политика использования cookie-файлов
- Техподдержка
Сетевое издание Thegirl.ru (Зегёрл.ру)
Треш и приколы из вк клипс | Полная деградация [Мемфисто] feat @Sovergon
Регистрационный номер ЭЛ № ФС 77 — 83229
Зарегистрировано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор) 26.04.2022 18+
Учредитель: Общество с ограниченной ответственностью «Шкулёв Диджитал Технологии»
Главный редактор: Бугай Е. А.
Copyright (с) ООО «Шкулёв Диджитал Технологии», 2023. Любое воспроизведение материалов сайта без разрешения редакции воспрещается.
Источник: thegirl.ru
Во «ВКонтакте» теперь можно проверить, через сколько «рукопожатий» вы знакомы с российскими звездами
«ВКонтакте» к своему 12-летию запустила приложение «Теория рукопожатий», с помощью которого можно узнать, какое количество друзей отделяет пользователя соцсети от знакомства с известной российской персоной, передает TJournal.
В приложении представлены 200 знаменитостей из разных сфер деятельности от музыкантов и актеров до блогеров, спортсменов и бизнесменов. К примеру, можно узнать, кто из друзей связывает пользователя с Русланом Усачевым, Данилой Поперечным, Юрием Дудем, Хабибом Нурмагомедовым и другими.
Рассказать друзьям
Другие статьи по темам
Комментарии
Комментарии загружаются
Авторизуйтесь чтобы можно было оставлять комментарии.
Мы используем cookie, чтобы собирать статистику и делать контент более интересным. Также cookie используются для отображения более релевантной рекламы. Вы можете прочитать подробнее о cookie-файлах и изменить настройки вашего браузера.
- О сайте
- Контакты
- Рекламодателям
- Подписаться на рассылку
Источник: www.the-village-kz.com
Как отобразить знак зодиака ВКонтакте?
Теория шести рукопожатий: еще одно подтверждение
Однажды в студеную зимнюю пору я столкнулся с упоминанием того, что кто-то в Facebook пытается подтвердить теорию шести рукопожатий. Для тех кто не в курсе, эта теория заключается в том, что все жители земли в среднем знакомы друг с другом через цепочку из пяти друзей (т.е. шести рукопожатий). Подробнее об истории этой теории можно прочитать в википедии, там же можно узнать о том, что Майкрософт несколько лет назад пыталась подтвердить эту теорию на основе данных о контакт-листах мессенджера MSN — в результате у них получилось 6,6 рукопожатий, что вполне вписывается в теорию.
- На каких данных это все расчитывать.
- Где эти данные взять.
- Как эти данные сохранять.
- Каким алгоритмом воспользоваться для расчетов.
Мой взгляд был устремлен на ВКонтакте. Да, он охватывает только Россию и СНГ (причем неравномерно — в одноклассниках, к примеру, публика постарше). Да, там огромное количество ботов. ВКонтакте неидеален, но зато умеет раздавать список друзей в json-формате через запрос к al_friends.php.
- Можно пойти в лоб и писать сразу в MySQL: паук выплевывает 100 пользователей в секунду, у каждого 130 друзей, итого 13000 вставок в БД в секунду. Цифра не запредельная, но с учетом того, что паук работал на слабом сервере (старый одноядерный атлон), не совсем радужная.
- Можно писать текстовый дамп на диск, а потом всасывать его в базу данных. При таком раскладе база будет весить примерно (4 байта (размер поля user_id) + 4 байта (размер поля friend_id) + 8 байтов на оверхед и индексы) * 80М пользователей вконтакте * 130 друзей = 166Гб. Многовато будет. Причем выборка с такой базы всех друзей пользователя не будет выглядеть как суперэффективный запрос.
- Можно забить на MySQL и использовать какое-нибудь hash-value хранилище. В него писать пару «user_id array(friend_id friend_id . )», таким макаром база сдуется раза в четыре и всех друзей будет выбирать одним обращением к диску. В качестве хранилища изначально был выбран Kyoto Cabinet, но из-за каких-то странных аномалий в производительности на большой базе состоялся переезд на гугловый LevelDB.
- Алгоритм Флойда-Уоршелла, позволил бы рассчитать дистанции от всех пользователей ко всем. Чудесный алгоритм, но у него есть неприятное требование памяти — необходимо хранить квадратную матрицу user_id/user_id, которая бы занимала 1 байт * 80М пользователей * 80М пользователей = 6400 Тб. Совсем многовато.
- Алгоритм Дейкстры, позволил бы найти дистанции от одного пользователя до всех остальных сразу. Существует довольно много эффективных его реализаций, одна из которых и была ради эксперимента использована. Алгоритм чудесно работал на 1% синтетическом сэмпле всей базы, но при запуске уже на среднем 10% семпле базы начинал жестоко тормозить в довольно неожиданном месте — обход большого дерева друзей постоянно лазил в случайные места памяти и ловил почти 100% CACHE_MISS и без того слабого процессора. Говоря человеческим языком, данные не помещались в кэш процессора, и тут начинались феерические тормоза.
- Двунаправленный поиск. Да, не самый элегантный в мире алгоритм, зато простой как таблица умножения. Позволяет найти кратчайшую дистанцию между двумя пользователями. Реализация его писалась с использованием битовых полей, которые элегантно упихивались в кэш процессора, в результате дистанцию между двумя людьми алгоритм находил где-то за полминуты.
Далее начались странности с данными. Почти 50% всех пользователей с ненулевым количеством друзей входило в абсолютно независимые кластеры, в которых нет внешних связей (или таких связей полторы штуки на весь кластер). Грубо говоря, 50 человек зафрендили друг друга и больше никого. Довольно странное поведение, не так ли?
Да, возможно, это сектанты и им религия запрещает френдить ВКонтакте не-членов секты. Но врядли, скорее всего это боты.
Выкинув ботов, отловленных подобным неожиданными способом, было проанализировано 6773 пары пользователей и получился очень интересный результат:
На гистограмме по оси x — длина найденной кратчайшей цепочки друзей, а по оси y — вероятность ее найти в процентах.
Таком образом, в среднем, между двумя случайными пользователями ВКонтакте есть 5.65 друзей (т.е. 6.65 рукопожатий). Эта цифра вполне вписывается в изначально проверяемую теорию, к тому же довольно точно совпадает с результатом, полученным в Microsoft (у них вышло 6.6). Так что полученный результат можно считать еще одним подтверждением теории шести рукопожатий.
Источник: habr.com