Как стать автором
Обновить
152
Карма
0
Рейтинг
Валерий Макаров @valemak

Программист

Восходящая сортировка кучей

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

Это заключительная статья из серии про сортировки кучей. В предыдущих лекциях мы рассмотрели весьма разнообразные кучные структуры, показывающих отличные результаты по скорости. Напрашивается вопрос: а какая куча наиболее эффективна, если речь идёт о сортировке? Ответ таков: та, которую мы рассмотрим сегодня.
Траффик
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 5.8K
Комментарии 6

Турнирная сортировка

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

Продолжаем знакомиться с разнообразными кучами и алгоритмами сортировок с помощью этих куч. Сегодня у нас так называемое турнирное дерево.
Траффик
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 7.8K
Комментарии 0

Сортировка декартовым деревом

Блог компании Edison Программирование *Алгоритмы *
Свежий взгляд на традиционные концепции. Сегодня будет такой «декарт» которого в школе не проходили.


Суть алгоритма в том, что на основании массива строится так называемое декартово дерево. А из построенного декартового дерева очень легко получить все элементы в порядке возрастания или убывания.
Траффик
Всего голосов 20: ↑17 и ↓3 +14
Просмотры 11K
Комментарии 6

Сортировка выворачиванием

Блог компании Edison Программирование *Совершенный код *Алгоритмы *C *
Программист из Индии наглядно показывает Zig-Zag, Zig-Zig и Zig, используемые в алгоритме SplaySort:


В этом сезоне мы изучаем разнообразные кучи и как их можно использовать для сортировки. Однако на сей раз мы сделаем шаг в сторону от магистральной темы. Сегодняшняя структура — splay tree — кучей не является. Но оно нам нужно, чтобы морально подготовиться к изучению очередной кучи — на следующей неделе будет лекция про сортировку декартовым деревом.
Траффик
Всего голосов 15: ↑13 и ↓2 +11
Просмотры 5.8K
Комментарии 3

Сортировка слабой кучей

Блог компании Edison Высокая производительность *Совершенный код *C++ *Алгоритмы *

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

При сортировке с помощью слабой кучи всегда меньше количество сравнений и обменов, чем если использовать обычную кучу. Так что да, слабая куча сильнее, чем обычная куча.
Траффик
Всего голосов 27: ↑26 и ↓1 +25
Просмотры 9.2K
Комментарии 10

Плавная сортировка

Блог компании Edison Python *Программирование *Совершенный код *Алгоритмы *

Продолжаем погружение в разнообразные кучи.

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

Многие слыхали про эту сортировку, однако мало кто знает как именно она работает. Сегодня увидим, что ничего сложного в ней нет.



Метод изобрёл легендарный Эдсгер Дейкстра. Помимо многочисленных ярчайших достижений в теории алгоритмов, он также является автором такого остроумного высказывания:

«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.»

Надеюсь, не будет кощунством, что анимация в статье создана с помощью VBA :-)
Траффик
Всего голосов 22: ↑22 и ↓0 +22
Просмотры 12K
Комментарии 7

Сортировка n-нарной пирамидой

Блог компании Edison Python *Программирование *Совершенный код *Алгоритмы *

Сортировку кучей (она же — пирамидальная сортировка) на Хабре уже поминали добрым словом не раз и не два, но это всегда была достаточно общеизвестная информация. Обычную бинарную кучу знают все, но ведь в теории алгоритмов также есть:

n-нарная куча; куча куч, основанная на числах Леонардо; дерамида (гибрид кучи и двоичного дерева поиска); турнирная мини-куча; зеркальная (обратная) куча; слабая куча; юнгова куча; биномиальная куча; и бог весть ещё какие кучи…

И умнейшие представители computer science в разные годы предложили свои алгоритмы сортировки с помощью этих пирамидальных структур. Кому интересно, что у них получилось — для тех начинаем небольшую серию статей, посвящённую вопросам сортировки с помощью этих структур. Мир куч многообразен — надеюсь, вам будет интересно.
Траффик
Всего голосов 25: ↑24 и ↓1 +23
Просмотры 8.6K
Комментарии 5

Гибридные сортировки

Блог компании Edison Программирование *Совершенный код *Алгоритмы *Визуализация данных


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

Но если в алгоритме комбинируются разные методы, то тогда он относится к классу гибридных сортировок.
Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Просмотры 10K
Комментарии 2

Сортировка «Американский флаг»

Блог компании Edison Python *Совершенный код *Алгоритмы *Визуализация данных

Чтобы понять принцип действия этой «многополосной» сортировки проще для начала разобраться на примере флага с тремя полосами. А чтобы легко разобраться с трёхцветным флагом, лучше сначала посмотреть, как это работает на примере двухцветного. А чтобы разобраться с двухцветным...
Траффик
Всего голосов 32: ↑30 и ↓2 +28
Просмотры 14K
Комментарии 3

[Анимация] Технобренды захватывают мир

Блог компании Edison Исследования и прогнозы в IT Управление продуктом *Брендинг Бизнес-модели
Перевод

Создать мировой бренд, устойчивый и конкурентный — нетривиальная задача.

Деятельность IT-концернов приводит к переосмыслению самого понятия «конкурентное преимущество». Оперативно реагируя на запросы потребителей и используя мощь бренда, эти компании непрерывно создают масштабируемые решения возникающих вызовов.

На анимации ниже показаны наиболее ценные бренды в 2019 году по сравнению с 2001 годом, согласно ежегодному рейтингу «Лучшие мировые бренды». Это иллюстрирует как технологические компании сумели нарастить масштаб до мирового уровня за относительно короткий период, оттеснив традиционных мастодонтов бизнеса на второй план.
Читать дальше →
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 3.2K
Комментарии 10

Корпорация F5 Networks рассылает своим клиентам письма, в которых информирует о текущей ситуации с NGINX

Блог компании Edison Open source *Nginx *Управление продуктом *Законодательство в IT

Reddit-пользователь m8r-1975wk, работающий в компании, которая сотрудничает с корпорацией F5 Networks, опубликовал письмо, пришедшее в рассылке от F5.

Рейтинг данного пользователя соответствует уровню обычного вменяемого участника reddit: карма его публикаций находится в пределах 1400, а карма комментариев — вблизи показателя 5700.
Читать дальше →
Всего голосов 79: ↑78 и ↓1 +77
Просмотры 59K
Комментарии 146

В 2011 году уже обсуждался вопрос, кому принадлежит Nginx — Игорю Сысоеву или «Рамблеру»

Блог компании Edison Open source *Nginx *Управление продуктом *Законодательство в IT

Примерно спустя десятилетие после начала работы над своим open-source-проектом Игорь Сысоев в июле 2011 года создал компанию «Nginx». К веб-серверу, ставшему к тому времени одним из самых популярных в мире, ожидаемо проявили интерес частные инвесторы и осенью того же года компания Сысоева привлекла инвестиции в размере 3 миллионов долларов. Треть акций компании приобрели фонды BV Capital, Runa Capital и MSD Capital.

В «Рамблере» тогда заявили, что не претендуют на эти деньги.
Читать дальше →
Всего голосов 116: ↑111 и ↓5 +106
Просмотры 45K
Комментарии 149

[Видеоанимация] Проводный мир: как за 35 лет сеть подводных кабелей опутала земной шар

Блог компании Edison Высокая производительность *Децентрализованные сети Сетевые технологии *Инженерные системы
Перевод

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

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


Теперь даже видео в HD-качестве доступно практически везде. За счёт чего Интернет стал таким быстрым? Потому, что он движется на скорости света.
Всего голосов 27: ↑25 и ↓2 +23
Просмотры 13K
Комментарии 43

[Инфографика] Искусственный интеллект в научной фантастике

Блог компании Edison Гаджеты Искусственный интеллект Научная фантастика Будущее здесь
Перевод

Как говорится, важнейшим из искусств обмана для нас является кино.

Однако, когда имеем дело с научной фантастикой, человеческое воображение частенько зрит в верном направлении, особенно, если речь о футурологических прогнозах. Происходящая революция, связанная с искусственным интеллектом, тотально меняет нашу жизнь. Но, оказывается, мы размышляли об этом задолго до.
Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 8.9K
Комментарии 30

Подсчёт с приблизительным распределением — чаще всего переизобретаемая сортировка

Блог компании Edison JavaScript *Java *Совершенный код *Алгоритмы *

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

Чаще прочих встречается вот такая алгоритмическая идея.

Каждый элемент заносится примерно в то место массива, где он должен находиться. Получается почти упорядоченный массив. К которому или применяется сортировка вставками (она самая эффективная для обработки почти упорядоченных массивов) или локальные неупорядоченные области обрабатываются рекурсивно этим же алгоритмом.
Траффик
Всего голосов 21: ↑21 и ↓0 +21
Просмотры 5K
Комментарии 2

Журнал «Трамвай» — ярко вспыхнувшая и быстро погасшая звезда российского детского авангарда

Блог компании Edison Читальный зал Управление медиа *Дизайн Копирайт
Мои личные впечатления о журнале за 6 5 сезонов его существования. В статье есть умеренное количество критики «Мурзилки» и «Весёлых картинок», поэтому пламенным апологетам легендарных советских изданий от чтения этой статьи, возможно, лучше воздержаться.

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

1990: Золотой период


Читать дальше →
Всего голосов 77: ↑69 и ↓8 +61
Просмотры 24K
Комментарии 47

ИИ и 2048. Часть 2: Минимакс + альфа-бета отсечение

Блог компании Edison Алгоритмы *Тестирование игр *Искусственный интеллект Логические игры


Метод Монте-Карло мы разобрали, сегодня посмотрим, как компьютерный разум играет в 2048, используя старый добрый минимакс с альфа-бета отсечением.
Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 11K
Комментарии 11

Объяснение парадокса Ферми в рамках космической социологии Лю Цысиня

Блог компании Edison Научно-популярное Космонавтика Научная фантастика Астрономия
Млечный путь

Не будем спойлерить сюжет или технологии, описанные в увлекательной трилогии «Память о прошлом Земли», нас интересует объяснение парадокса Ферми, данное китайским писателем, и только оно.
Читать дальше
Всего голосов 38: ↑34 и ↓4 +30
Просмотры 22K
Комментарии 558

Сортировки распределением

Блог компании Edison Python *Совершенный код *Алгоритмы *Визуализация данных


В сортировках распределением элементы распределяются и перераспределяются по классам до тех пор, пока массив не отсортируется.
Траффик
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 16K
Комментарии 15

Мат слоном и конём. Циклический метод «Кавказская пленница»

Занимательные задачки Алгоритмы *Логические игры

Разобрав по косточкам два метода мата слоном и конём (TWIX и «делетан») пришлось перелопатить достаточно большое количество партий, где встретилось это окончание. В абсолютном большинстве одинокого короля прибивают «твиксом», в остальных редких случаях применяется нечто делетаноподобное. Да и в Википедии описываются только эти два метода, не упоминая, есть ли вообще другие системные способы заматовать слоном и конём.

Вроде как все точки над ё в этой теме расставлены, но одна партия упорно мне не давала покоя.
Траффик
Всего голосов 42: ↑41 и ↓1 +40
Просмотры 10K
Комментарии 13

Информация

В рейтинге
Не участвует
Откуда
Кировоград, Кировоградская обл., Украина
Дата рождения
Зарегистрирован
Активность