Как стать автором
Обновить
103.79
Рейтинг

Алгоритмы *

Все об алгоритмах

Сначала показывать
Порог рейтинга

Как беспроводные сети могут помочь беспилотным машинам?

IT-инфраструктура *Алгоритмы *Робототехника Автомобильные гаджеты Будущее здесь
Из песочницы

В данной статье мы рассказываем о том, как беспроводные сети могут помочь беспилотным машинам справляться с некоторыми “edge case” ситуациями и описываем подход для упрощения операции поиска объектов, влияющие на свойства беспроводных каналов. 

Итак, начнем!

Читать далее
Рейтинг 0
Просмотры 117
Комментарии 1

Новости

Кейс: алгоритм возврата товара на маркетплейсе поставщикам компании Евраз

Алгоритмы *

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 177
Комментарии 0

Запустился бесплатный курс «Подготовка к алгоритмическому собеседованию» от Яндекс Практикума

Блог компании Яндекс Практикум Программирование *Алгоритмы *Учебный процесс в IT Карьера в IT-индустрии
Сервис онлайн-образования Яндекс Практикум запустил бесплатный курс «Подготовка к алгоритмическому собеседованию» для специалистов, которые планируют проходить алгоритмические собеседования или просто хотят познакомиться с понятием «алгоритмическая секция».

Курс будет полезен разработчикам независимо от уровня алгоритмической подготовки:

  • если вы раньше изучали алгоритмы и структуры данных, вы сможете применить их на практике;
  • если вы только планируете их изучать, то курс поможет вам сориентироваться и уделять время только тому, что пригодится на собеседованиях.



Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 1.1K
Комментарии 4

Реализуем алгоритм поиска в глубину

Блог компании OTUS Алгоритмы *
Перевод

В этом туториале описан алгоритм поиска в глубину (depth first search, DFS) с псевдокодом и примерами. Кроме того, расписаны способы реализации поиска в глубину в C, Java, Python и C++.

“Поиск в глубину” или “обход в глубину” — это рекурсивный алгоритм по поиску всех вершин графа или дерева. Обход подразумевает под собой посещение всех вершин графа.

Читать далее
Всего голосов 14: ↑7 и ↓7 0
Просмотры 2.8K
Комментарии 3

Проблемы с поиском в интернете нужной программы

Алгоритмы *

Поиск нужной программы (без знаний о ее названии, а только по функционалу) усложняется год от года. Это происходит из-за того что:

1. Большое количество программ.

2. За счет поисковой оптимизации, на первых строках по ключевым словам выводятся в только информация которая была оптимизирована под поисковые запросы. Т.е. на первых позициях будут либо платные программы, либо условно-бесплатные. А полностью бесплатные программы будут на нижних строках поиска.

3. Большое количество дублированной информации.

4. Большое количество одинаковых сайтов с одинаковыми программами.

5. Большое количество почти одинаковых программ.

Если нет точного названия программы, а только лишь нужный функционал, то может оказаться так, что на первых строках будут лишь платные программы или одна и та же программа (просто на разных сайтах), а бесплатных программ или другие программы (мало популярные) может не быть в первых строках поиска. В результате чего может сложиться впечатление, что других программ нет или поиск будет длиться слишком долго, что может надоесть. Вот и получается, что выбор программ искусственно ограничивают.

Пример:

Год назад искал программу для записи с экрана, через поиск нашел достаточно большое количество разных программ. Протестировал несколько и выбрал одну нормальную (полностью бесплатную). Недавно опять понадобилась подобная программа, и я через поиск (на домашнем ПК) пытался ее найти. Так вот (т.к. забыл название той программы и она была на офисном компьютере) потратил около часа, перепробывал несколько программ, но найти ту или более менее подходящую не смог. Потом взяв на офисном компьютере название программы, придя домой тут же ее нашел.

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 2.7K
Комментарии 13

Сортировка подсчётом или почему этот способ игнорируют?

Высокая производительность *Программирование *.NET *Алгоритмы *C# *
Recovery mode

Как я изобрёл весьма быстрый велосипед и узнал, что на нём уже кто-то ездит.

Подробнее...
Всего голосов 12: ↑7 и ↓5 +2
Просмотры 3.8K
Комментарии 15

Эффективное хранение графов: матрицы смежности

Программирование *Алгоритмы *
Из песочницы

Так случается, что ограничения не позволяют нам хранить матрицу смежности графа размером n^2. В данной статье я описал, как уменьшить этот размер в 8 раз для ориентированного графа и в 2 раза для неориентированного. Битовая и треугольная матрицы смежности - вот что такое эффективное хранение.

Читать полностью
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 2.4K
Комментарии 7

Фильтрация JSON: как мы проводили конкурс на самый быстрый алгоритм

Блог компании Quadcode Алгоритмы *IT-компании

Привет, меня зовут Костя Плешаков, я Архитектор в Quadcode. В статье расскажу, как мы организовали конкурс, который помог решить проблему исключения некоторых данных (в нашем API) в процессе отправки на фронт. В результате мы получили высокопроизводительный алгоритм фильтрации JSON с использованием векторных инструкций Intel® AVX2.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 2.5K
Комментарии 9

OCR за час? — Не думаю

Блог компании Инфосистемы Джет Программирование *Алгоритмы *Машинное обучение *Искусственный интеллект

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

Читать далее
Всего голосов 25: ↑24 и ↓1 +23
Просмотры 3.3K
Комментарии 6

Дизайн шахматной игры

Java *Разработка игр *Алгоритмы *ООП *
Recovery mode
Перевод

Перевод с английского с адаптацией

Ссылки на оригинал:
https://www.geeksforgeeks.org/design-a-chess-game/
https://massivetechinterview.blogspot.com/2015/07/design-chess-game-using-oo-principles.html

Уровень сложности: Сложный
Последнее обновление: 30 Сент., 2020

Постановка задачи:
Проблема состоит в том, чтобы разработать шахматную игру с использованием объектно-ориентированных принципов.

На вопрос: Adobe, Amazon, Microsoft и т. д.

Решение:
Эти виды вопросов задаются на интервью, чтобы судить о навыке объектно ориентированного дизайна кандидата. Итак, прежде всего, мы должны подумать о классах.

Примечание автора перевода:
Хорошо было бы определиться со структурой кода и построить UML диаграмму.
Затем сформировав связи и отношения, строить классы. Такой подход к проектированию был бы более наглядным и написание кода отнимало бы меньше времени.

Далее в тексте: Прим. - примечание автора перевода.

*«Читать далее»

Основными классами будут:

Читать далее
Всего голосов 14: ↑1 и ↓13 -12
Просмотры 3.6K
Комментарии 12

Обратная сторона Луны: как мы создали чат-бота с «человеческим лицом»

Блог компании Инфосистемы Джет Python *Алгоритмы *Машинное обучение *Искусственный интеллект

Меня зовут Александр Терехов, я работаю инженером группы классификации и диагностики (КиД) в самарском филиале «Инфосистемы Джет». Несколько лет назад я помогал девушке с дипломной работой, и мы создали чат-бота с психологическим уклоном — он тестировал типы личности и темпераменты. Тогда я настолько проникся этим опытом, что, когда начал создавать чат-бота для нужд технической поддержки, решил добавить в него немного психологии. Так появилась Луна — чат-бот, который помогает в работе инженерам «Инфосистемы Джет» и реагирует на эмоции.

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 1.2K
Комментарии 2

«Эволюция против муравьёв» сравниваем алгоритмы оптимизации

Алгоритмы *Машинное обучение *Поисковая оптимизация

Решаем задачу о ранце. Муравьиный алгоритм или генетический лучше? Давайте разбираться.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 2.2K
Комментарии 5

8 ошибок, из-за которых ты проиграешь в соревновательном Data Science

Блог компании RUVDS.com Алгоритмы *Машинное обучение *Data Engineering *

Привет, чемпион!

Если ты читаешь этот пост, значит, тебе стало интересно, не допускаешь ли этих ошибок ты?! Почти уверен, что ты допускал эти ошибки хотя бы раз в жизни. Мы не застрахованы от совершения ошибок, такова наша человеческая натура — ошибаться для нас естественно. Однако, я постараюсь уберечь тебя от тех ошибок, которые совершал сам или замечал у других.

Так вышло, что за время участия в чемпионатах по соревновательному анализу данных я достаточно часто бывал в призовых местах. Однако, бывали случаи, когда я лишался призовых по глупости или неосторожности. Рассказываю по порядку.
Читать дальше →
Всего голосов 57: ↑55 и ↓2 +53
Просмотры 9.3K
Комментарии 10

STM32. Про синус

Алгоритмы *C *Промышленное программирование *Программирование микроконтроллеров *

Тригонометрические функции, характеризующиеся высоким потреблением процессорного времени, могут негативно влиять на выбор бюджетных микроконтроллеров ( без модуля FPU ) для задач, где важна скорость счёта, например, контроль пространственного положения.

Читать далее
Всего голосов 59: ↑58 и ↓1 +57
Просмотры 9.4K
Комментарии 88

Строковые алгоритмы на практике. Часть 1 — Алгоритм Кнута — Морриса — Пратта

Высокая производительность *Алгоритмы *

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


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

Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 9.4K
Комментарии 8

Первые 255 задач на «‎литкоде»‎

Программирование *Алгоритмы *
Были годные статьи об аргументированной пользе алгоритмов (например, habr.com/ru/company/geekfactor/blog/597035), тут хочется поделиться личным опытом.

На всякий случай, не стоит переоценивать пользу алгоритмов: если вы на одном уровне зп и при этом коллега крутил на всем подряд биг О нотэйшн, скорее всего софт скилы у него развиты лучше.

Что дано: фронтэнд с элементами nodejs разработки. Знаю javascript, взял java из-за общего префикса и Брюса Эккеля. Язык годный, легко читать, осознал что надо оч много писать после 175 задачек на ресурсе под именем leetcode. Попробовал язык мобилок, язык прекрасный, но не для мобилок. Swift прекрасен и будет еще прекраснее в будущем. До наступления прекрасного будущего решил юзать питон: легко и мало писать, но трудно читать — да и пофиг, так как каждый день новая задачка.
Читать дальше →
Всего голосов 13: ↑7 и ↓6 +1
Просмотры 16K
Комментарии 15

Как улучшить любой патент на изобретение в IT, на примере Яндекса

Алгоритмы *Управление разработкой *Развитие стартапа Патентование *

«За всю историю человечества было выдано 50 млн. патентов.
Задача — сделать 1 млрд. новых изобретений».
@MagisterLudi

Каждый землянин, даже совсем не научно-технический революционер или патентный военный, прочитавший эту информацию о прибыльной методике изобретательства, сможет при желании написать рационализаторское предложение или патент, за которые ему заплатят на работе или в своём бизнесе. И, самое удивительное, что категорически только тот, кто именно практически ежедневно занимается какой-то достаточно узкой областью ИТ, может улучшить и изобрести новое, а не «аналитик» вообще, доцент или чиновник. Мир меняется, и то, что раньше изобреталось и патентовалось, как просто научное, теперь должно быть максимально практичным, как конкретное «техническое решение».

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 2.5K
Комментарии 12

Алгоритмы и рыбалка: как работает мозг программиста в естественной среде обитания

Блог компании УБРиР Алгоритмы *
Recovery mode

Привет, меня зовут Валерий Антонов, я руковожу направлением Java в Уральском банке реконструкции и развития (УБРиР). Сегодня расскажу, как я смог переложить систему алгоритмов на, казалось бы никак с этим не связанное хобби, - рыбалку.

Читать далее
Всего голосов 5: ↑2 и ↓3 -1
Просмотры 1.9K
Комментарии 5

Вклад авторов