Ответы пользователя по тегу Алгоритмы
  • Как сделать рейтинг на основе просмотров статьи?

    Какой-то специальной формулы нет.

    Но если немного подумать то вырисовывается 2 варианта и все зависит от того для чего вам рейтинг.

    1 Если вам необходимо где-то просто ответить какая статья круче какой, то можно сравнивать тупо просмотры, потому что какое бы вы не брали производное от этого N, как правило большее будет все равно у той статьи у которой больше просмотров. Ну допустим если ваш рейтниг корень квадратный из количества просмотров - выше порядок статей не изменится.
    Итого - если вам нужно просто сравнивать статьи - тупо в лоб сравнивайте число просмотров.

    2 Если вам нужно определять НАСКОЛЬКО одна статья круче другой, то вам придется определится как это связано с просмотрами, потому что в 2 раза больше просмотров может не означать что статья в 2 раза круче. Тут скорее всего подойдет какая-то степенная функция - подбирайте не свой вкус, но как правило квадратный корень обычно наилучшее решение. Таким образом статья будет в 2 раза круче если набрала в 4 раза больше просмотров.

    3 (да он тоже входит в эти два варианта) Если вы собираетесь использовать рейтинг для показа статей на главной например вам придется очень хорошо продумать способ показа. Дело в том что пусть у вас показываются статьи случайно, если у них одинаковый рейтинг, по одной на главной и всего две статьи. После того как третий человек кликнет по статье и они набирут суммарно 3 просмотра, у одной из них рейтинг станет в 2 раза выше и на главной начнет показываться только она, в итоге она начнет набирать просмотры и ее рейтинг взлетит до небес, а отображать он будет не качество статьи, а работу генератора случайных чисел.
    Поэтому здесь нужно придумать способ показа. Хорошая идея выводить статьи с высоким рейтингом + несколько случайных статей. А сам рейтинг лучше взять степенной как в варианте 2. Интуитивно кажется хорошей идеей выводить на главной N случайно выбранных статей + kN с высоким рейтингом статей где k == степени корня.

    4 (тоже из этих двух) Если вы хотите оценивать именно качество именно статьи, а не заголовка и картинки к ней, то я бы учитывал не просмотры вообще, а только просмотры больше определенного времени за которое можно прочитать статью. А то может выяснится что большинство зашло просто посмотреть на сиськи, а статью они вообще не читали, но рейтинг у нее до небес.
    Ответ написан
  • Как расставить пары с условием за преемлемое время (380! комбинаций)?

    Или я не понял условие или...
    А что здесь какого-то сложного? Минимальное количество дней обеспечит максимальная загрузка слотов ежедневно.
    Если слотов четное количество (n). То на каждом шаге выбираем n/2 пар которые еще не играли и они отыгрывают обе свои игры.

    Если слотов нечетное количество то на нечетном шаге выбираем (n-1)/2 пар которые еще не играли и они отыгрывают обе свои игры + 1 пару которая еще не играла и она играет 1 игру.
    На четном шаге мы выбираем (n-1)/2 пар которые еще не играли и они отыгрывают обе свои игры и одну единственную пару которая сыграла свою одну игру на прошлом шаге - она отыгрывает вторую свою игру.

    Всё.
    Ответ написан
  • Как написать алгоритм по генерации полного и правильного названия улицы, площади тд?

    Можно попробовать операться на флексии в названии объекта. Для их выделения придется набросать какую-то библиотеку, а за основу взять любой стеммер. Если делаете на js то есть яндексовский стеммер быстрый и простой.
    Лучше всего опираться на аффикс-стеммер.
    Когда у вас будет суффикс слова потребуется выделить из него окончание. Это уже совсем просто, а если у вас аффикс-стеммер, то окончание где-то в нем уже будет выделно.
    Ну а дальше правило частично подбирается из вашего же примера - окончание "ая" для объектов женского рода - тип добавляем в конце. Окончание "ого" для объектов мужского рода - тип в начале.
    В названии содержится слово "имени" или "им." тогда тип ставится перед ним.
    И так далее - вам будет нужна таблица окончание/тип объекта и на пересечениях положение типа относительно названия.
    Это будет основной способ.
    + будет предварительный - если название из двух или трех слов и содержит слово "имени".
    + таблица особых случаев через которую вы зададите немногие исключения (которые вероятно будут).
    Ответ написан
    Комментировать
  • Есть ли методики определения позитивности новости?

    Вряд ли. Сам какое-то время назад искал нечто подобное.
    Задача ко всему прочему осложняется тем, что само понятие негативный/позитивный размыто и субъективно, а факт о котором сообщается в новости, может иметь много последствий, часто не предсказуемых.
    Даже банальные новости имеющие численное представление иногда трудно отнести к позитивным или негативным. Допустим просто новость об изменении курса рубля - вот она негативная или позитивная? Допустим рубль упал - это плохо, но если ты вчера купил пару тыщ баксов - это хорошо, но если у тебя было рублей на 20 тыщ это плохо, но импортерам хорошо, но населению плохо, но если он упал в результате снижения ставки - хорошо. Вот и пойди же ты пойми - хорошо это или плохо.
    Можно подумать, что есть все-равно однозначно плохие или хорошие новость. Вот новость о количестве жертв в результате техногенной катастрофы - это же негативная новость?
    Например: "130 человек погибли в результате аварии на шахте N..." конечно негативная, но "... а не 200 как сообщалось ранее - 70 шахтеров удалось извлечь из под завалов живыми в результате спасательных работ."
    Или совсем простая - "Поисковой группе удалось найти самописцы рейса 2039" - это негативная новость или позитивная.
    По всей видимости только человек и то с большой натяжкой может оценить новость.

    UPD
    Я бы отказался от простой оценки негативность/позитивности как таковой.
    Мне кажется было бы хорошо суметь разделить новость и контекст. И определить новости как создающие новый контекст, и новости в контексте более ранних.
    Вернемся к несчастным пассажирам рейса 2039 - нахождение черных ящиков новость положительная, однако она в контексте негативной новости об авиакатастрофе.
    Сама же новость об авиакатастрофе безусловно создает свой новый контекст и является негативной вне контекста.
    Как это определять автоматически я вообще не представляю.
    По хорошему нужен некий источник формализованных новостей. Как до этого не додумались новостные агентства в 2015 году я не понимаю, если честно.
    Насколько я знаю ни одно не предоставляет никаких метаданных для новостей.
    Ответ написан
    2 комментария
  • Какой из этих алгоритмов наиболее безопасен?

    Еще один нюанс - безопасность алгоритма не так важна. Уделите внимание безопасности реализации алгоритма.
    Ответ написан
    Комментировать
  • Какой способ здесь лучше?

    Ну учитывая что приведенный вариант вообще не рабочий и обрабатывать будет полностью только первый массив, то лучше свой цикл для каждого массива.

    В общем случае накладные расходы на цикл не велики, так что каждый цикл на свой массив не так уж и страшно.

    А учитывая, что код с одним циклом сложнее и хуже читаем, да еще на столько, что вы уже ошибок наделали, то лучше свой цикл на каждый массив.

    Видите как много за этот вариант аргументов - выбирайте его.
    Ответ написан
    Комментировать
  • Как правильно сравнить массивы и оценить их схожесть?

    Нужно сформулировать что такое схожесть и сразу станет ясно как сравнивать ;)
    Ответ написан
    Комментировать
  • Алгоритм дешифрования wifi пароля из файла?

    Это хэш. Его невозможно дешифровать, так как он по определению необратим. Только перебор.
    Ответ написан
  • Есть ли простой в реализации алгоритм нахождения простых чисел?

    В таком диапазоне проще всего вычислить заранее все простые и хранить готовую таблицу.
    Ответ написан
    Комментировать
  • Какие книги посоветуете по Алгоритмам?

    Не буду оригинальным - Кнут.
    Ответ написан
    Комментировать
  • Какие самые сложные нерешенные задачи в IT отрасли вы знаете?

    Из актуальных сейчас и еще не названных тут, наверное машинная мораль. Суть вкратце: авто с автопилотом попадает в ДТП. Перед автопилотом встает выбор - херачить мощный внедорожник который может выдержать более сильный удар, но в котором 3 человека среди которых ребенок или добить ладу калину в которой один человек, но после удара он 100% труп?

    Из совсем академических еще тут "Проблема остановки" не упоминалась. Но она не разрешима ;)
    Ответ написан
    5 комментариев