Операции над биномиальной кучей
1. insert(H, k) - вставкляет ключ К в биномиальную кучу H. Эта операция сначала создает биномиальную кучу с одним ключом, а затем вызывает объеденение для H
2. getMin(H) - пройдется по списку корней биномиальных деревьев и выдаст вам минимальный ключ
3. extractMin(H) - сначала вызывается метод getMin(), чтобы найти минимальное ключевое значение, после чего создаст новое биномиальное дерево, правильно его отформатировав
4. delete(H) - операция удаления, как и с операцией удаления в бинарном дереве: сначала уменьшает ключ до минус бесконечности, а после вызывает extractMin()
5. reduceKey(H) - сравниваем ключ уменьшения с ключом родительским, и если родительский ключ больше , мы меняем ключи и повторяем для родительского узла. Останавливаемся тогда, когда родительский элемент имеет наименьший ключ.
6. union - операция объеденения, которая используется во многих других функциях, как вы могли наблюдать.
Data Science: Алгоритмы и Структуры данных
1. insert(H, k) - вставкляет ключ К в биномиальную кучу H. Эта операция сначала создает биномиальную кучу с одним ключом, а затем вызывает объеденение для H
2. getMin(H) - пройдется по списку корней биномиальных деревьев и выдаст вам минимальный ключ
3. extractMin(H) - сначала вызывается метод getMin(), чтобы найти минимальное ключевое значение, после чего создаст новое биномиальное дерево, правильно его отформатировав
4. delete(H) - операция удаления, как и с операцией удаления в бинарном дереве: сначала уменьшает ключ до минус бесконечности, а после вызывает extractMin()
5. reduceKey(H) - сравниваем ключ уменьшения с ключом родительским, и если родительский ключ больше , мы меняем ключи и повторяем для родительского узла. Останавливаемся тогда, когда родительский элемент имеет наименьший ключ.
6. union - операция объеденения, которая используется во многих других функциях, как вы могли наблюдать.
Data Science: Алгоритмы и Структуры данных
Китайская нейросеть, которая заменяет подписку на GPT — бесплатно и оффлайн
2026 год – новая эпоха для DeepSeek. Китайская нейросеть работает прямо на вашем устройстве, обгоняет западные модели и снимает все ограничения: без подписок, без интернета, без контроля.
Зерокодер обновил практикум и собрал все, что важно знать о локальных моделях и как с ними работать.
⚡️Что ждет вас на вебинаре?
– Покажем, как установить DeepSeek на компьютер и пользоваться нейросетью оффлайн, без подписки и передачи данных в облако;
– Объясним, чем отличаются версии DeepSeek и какие модели использовать для текста, кода, анализа данных, обучения и исследований;
– Проверим DeepSeek на реальных задачах: коде, документах, расшифровках созвонов и работе с собственными файлами;
– Покажем, как монетизировать навыки работы с локальными ИИ и как работать быстрее GPT бесплатно.
Регистрируйтесь прямо сейчас
Участники эфира получат чек-лист по выбору модели под задачу и подборку 20+ сценариев для ИИ-помощника на своем компьютере, который работает с вашими файлами.
Эфир подойдёт всем, кто хочет пользоваться ИИ без лимитов и зависимости от чужих серверов, монетизировать навыки и оставаться в тренде технологий 2026 года.
Бесплатный практикум – по ссылке.
2026 год – новая эпоха для DeepSeek. Китайская нейросеть работает прямо на вашем устройстве, обгоняет западные модели и снимает все ограничения: без подписок, без интернета, без контроля.
Зерокодер обновил практикум и собрал все, что важно знать о локальных моделях и как с ними работать.
⚡️Что ждет вас на вебинаре?
– Покажем, как установить DeepSeek на компьютер и пользоваться нейросетью оффлайн, без подписки и передачи данных в облако;
– Объясним, чем отличаются версии DeepSeek и какие модели использовать для текста, кода, анализа данных, обучения и исследований;
– Проверим DeepSeek на реальных задачах: коде, документах, расшифровках созвонов и работе с собственными файлами;
– Покажем, как монетизировать навыки работы с локальными ИИ и как работать быстрее GPT бесплатно.
Регистрируйтесь прямо сейчас
Участники эфира получат чек-лист по выбору модели под задачу и подборку 20+ сценариев для ИИ-помощника на своем компьютере, который работает с вашими файлами.
Эфир подойдёт всем, кто хочет пользоваться ИИ без лимитов и зависимости от чужих серверов, монетизировать навыки и оставаться в тренде технологий 2026 года.
Бесплатный практикум – по ссылке.
Jupyter Notebook: галерея лучших блокнотов по ML и Data Science
Подборка примечательных файлов формата Jupyter Notebook по Machine Learning, Data Science и другим сферам, связанным с анализом данных.
➡️ Читать статью
Data Science: Алгоритмы и Структуры данных
Подборка примечательных файлов формата Jupyter Notebook по Machine Learning, Data Science и другим сферам, связанным с анализом данных.
Data Science: Алгоритмы и Структуры данных
Please open Telegram to view this post
VIEW IN TELEGRAM
Сортировка кучей (HeapSort)
Алгоритм сортировки в куче для сортировки в порядке возрастания:
1. Создайте максимальную кучу из входных данных.
2. На этом этапе самый большой элемент хранится в корне кучи. Замените его последним элементом кучи, а затем уменьшите размер кучи на 1. Наконец, скопируйте корень дерева.
3. Повторите шаг 2, пока размер кучи больше 1.
Data Science: Алгоритмы и Структуры данных
Алгоритм сортировки в куче для сортировки в порядке возрастания:
1. Создайте максимальную кучу из входных данных.
2. На этом этапе самый большой элемент хранится в корне кучи. Замените его последним элементом кучи, а затем уменьшите размер кучи на 1. Наконец, скопируйте корень дерева.
3. Повторите шаг 2, пока размер кучи больше 1.
Data Science: Алгоритмы и Структуры данных
Задача: отсортировать почти отсортированный массив
Дан массив из n элементов, где каждый элемент находится не более чем на k от своей целевой позиции. Разработайте алгоритм, который выполняет сортировку за время O(n log k)
Data Science: Алгоритмы и Структуры данных
Дан массив из n элементов, где каждый элемент находится не более чем на k от своей целевой позиции. Разработайте алгоритм, который выполняет сортировку за время O(n log k)
Data Science: Алгоритмы и Структуры данных
Как построить имитатор рынка с использованием цепей Маркова и Python
Модель поведения клиентов, визуализация результатов теста A/B, прогнозирование пользовательских показателей ... все с использованием простой марковской структуры!
➡️ Читать статью
Data Science: Алгоритмы и Структуры данных
Модель поведения клиентов, визуализация результатов теста A/B, прогнозирование пользовательских показателей ... все с использованием простой марковской структуры!
Data Science: Алгоритмы и Структуры данных
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Решение задачи: отсортировать почти отсортированный массив
Я же не зря завел данную задачу, аккуратно после темы кучи (Heap). Как раз подобный вид сортировки - лучше сделать как раз при помощи Heap!
Алгоритм
1. Создайте минимальную кучу (min Heap) размера k + 1, с первыми элементами k + 1 (это кстати у вас займет где-то O(k)
2. Один за другим удалите минимальный элемент из кучи, помещая элемент в массив результатов и добавьте новый элемент в кучу из оставшихся элементов
Data Science: Алгоритмы и Структуры данных
Я же не зря завел данную задачу, аккуратно после темы кучи (Heap). Как раз подобный вид сортировки - лучше сделать как раз при помощи Heap!
Алгоритм
1. Создайте минимальную кучу (min Heap) размера k + 1, с первыми элементами k + 1 (это кстати у вас займет где-то O(k)
2. Один за другим удалите минимальный элемент из кучи, помещая элемент в массив результатов и добавьте новый элемент в кучу из оставшихся элементов
Data Science: Алгоритмы и Структуры данных
Структура данных: Граф
Граф состоит из конечного набора вершин(узлов) и набора ребер, которые соединяют пару узлов.
Графы используются для решения многих реальных задач. К примеру для представления сетей: городских или телефонных или даже компьютерных сетей. Также представление графа заложено почти в каждой социальной сети.
Data Science: Алгоритмы и Структуры данных
Граф состоит из конечного набора вершин(узлов) и набора ребер, которые соединяют пару узлов.
Графы используются для решения многих реальных задач. К примеру для представления сетей: городских или телефонных или даже компьютерных сетей. Также представление графа заложено почти в каждой социальной сети.
Data Science: Алгоритмы и Структуры данных
Новый подход в Deep Learning: популяционное обучение нейросетей
Из данной статьи вы узнаете о подходе, предложенном компанией DeepMind для настройки гиперпараметров в моделях Deep Learning: популяционное обучение нейросетей.
➡️ Читать статью
Data Science: Алгоритмы и Структуры данных
Из данной статьи вы узнаете о подходе, предложенном компанией DeepMind для настройки гиперпараметров в моделях Deep Learning: популяционное обучение нейросетей.
Data Science: Алгоритмы и Структуры данных
Please open Telegram to view this post
VIEW IN TELEGRAM
Наглядное введение в нейросети на примере распознавания цифр
При помощи множества анимаций на примере задачи распознавания цифр и модели перцептрона дано наглядное введение в процесс обучения нейросети.
➡️ Читать статью
Data Science: Алгоритмы и Структуры данных
При помощи множества анимаций на примере задачи распознавания цифр и модели перцептрона дано наглядное введение в процесс обучения нейросети.
Data Science: Алгоритмы и Структуры данных
Please open Telegram to view this post
VIEW IN TELEGRAM
Python Ready — авторский канал, где Python перестаёт быть только теорией и становится рабочим инструментом. Мини-проекты, боты, советы, разборы задач, гайды и шпаргалки для каждого программиста.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Возвращение легенды: самый востребованный практикум Зерокодера по Claude Code снова пройдёт в августе.
CEO университета Зерокодер Кирилл Пшинник проведёт ещё один бесплатный онлайн-практикум, где в прямом эфире покажет, почему вокруг Claude Code столько шума и как использовать его на полную мощность.
На практикуме разберут:
• Как получить доступ к Claude Code из России и начать работать без ограничений;
• Как запускать сразу несколько ИИ-агентов для одного проекта;
• Как за 15 минут собрать рабочий сайт практически без ручного кода;
• Как автоматизировать аналитику и рутинные задачи без дополнительных сервисов;
Бонус: в конце практикума расскажем, как пользоваться Claude Code бесплатно и оформить виртуальную карту для оплаты других AI-сервисов
P.S. Это специальный повтор одного из самых популярных практикумов Зерокодера по Claude Code. Жмите на ссылку и успевайте зарегистрироваться!
CEO университета Зерокодер Кирилл Пшинник проведёт ещё один бесплатный онлайн-практикум, где в прямом эфире покажет, почему вокруг Claude Code столько шума и как использовать его на полную мощность.
На практикуме разберут:
• Как получить доступ к Claude Code из России и начать работать без ограничений;
• Как запускать сразу несколько ИИ-агентов для одного проекта;
• Как за 15 минут собрать рабочий сайт практически без ручного кода;
• Как автоматизировать аналитику и рутинные задачи без дополнительных сервисов;
Бонус: в конце практикума расскажем, как пользоваться Claude Code бесплатно и оформить виртуальную карту для оплаты других AI-сервисов
P.S. Это специальный повтор одного из самых популярных практикумов Зерокодера по Claude Code. Жмите на ссылку и успевайте зарегистрироваться!
Приложения где используется алгоритм обхода BFS графа
1. Нахождения пути или кратчайшего пути. Ибо при использовании BFS мы всегда достигаем нужной вершины из заданного источника, используя минимальное количество ребер.
2. Поисковые роботы или сканеры. Исследуется страница источник и проходится все в ширину, для оценки самих страниц.
3. Социальные сети. По факту любая ваша соц. сеть - состоит сугубо из графа. И обходы графа тут используются как раз BFS в основном.
4. Системы GPS-навигации. Опять же для построения маршрута
5. Сборка мусора во многих языках программирования, написана как раз через обход графа в BFS стиле (.NET platform)
6. Для проверки двудольности графа
Data Science: Алгоритмы и Структуры данных
1. Нахождения пути или кратчайшего пути. Ибо при использовании BFS мы всегда достигаем нужной вершины из заданного источника, используя минимальное количество ребер.
2. Поисковые роботы или сканеры. Исследуется страница источник и проходится все в ширину, для оценки самих страниц.
3. Социальные сети. По факту любая ваша соц. сеть - состоит сугубо из графа. И обходы графа тут используются как раз BFS в основном.
4. Системы GPS-навигации. Опять же для построения маршрута
5. Сборка мусора во многих языках программирования, написана как раз через обход графа в BFS стиле (.NET platform)
6. Для проверки двудольности графа
Data Science: Алгоритмы и Структуры данных
Представление графа через Set и hash суммы
По факту данное представление очень сильно схоже с списком смежности, однако, есть некоторые особенности! Давайте их и разберем сегодня.
Набор отличается от вектора 2мя вещами:
1. он хранит элементы в отсортированном порядке (так как мы используем Set)
2. дублирование элементов не допускается (так как по прежнему, это свойство самого Set)
Соответственно данный подход не получится применить для графов, у которых есть параллельные ребра.
Поскольку множества внутренне реализованы как деревья двоичного поиска (очень важный факт), ребро между двумя вершинами можно искать за время O (log V), где V - количество вершин в графе.
На картинке представлен пример того самого сета.
Завтра рассмотрим оптимизацию данного подхода
Data Science: Алгоритмы и Структуры данных
По факту данное представление очень сильно схоже с списком смежности, однако, есть некоторые особенности! Давайте их и разберем сегодня.
Набор отличается от вектора 2мя вещами:
1. он хранит элементы в отсортированном порядке (так как мы используем Set)
2. дублирование элементов не допускается (так как по прежнему, это свойство самого Set)
Соответственно данный подход не получится применить для графов, у которых есть параллельные ребра.
Поскольку множества внутренне реализованы как деревья двоичного поиска (очень важный факт), ребро между двумя вершинами можно искать за время O (log V), где V - количество вершин в графе.
На картинке представлен пример того самого сета.
Завтра рассмотрим оптимизацию данного подхода
Data Science: Алгоритмы и Структуры данных
Оптимизация представления графов по средствам Set и hash-функций
Основа этой оптимизации будет заключаться в использовании - unordered set. Его реализацию вы можете встретить в c++, однако, может и реализовать ее сами.
Unordered_set может содержать ключ любого типа - предопределенную или определяемую пользователем структуру данных, но когда мы определяем ключ типа, определяемого пользователем, нам нужно указать нашу функцию сравнения, в соответствии с которой будут сравниваться ключи. По факту это единственная сложность в реализации данной структуры данных. Завтра обсудим, как же ее реализовать всё таки!
Data Science: Алгоритмы и Структуры данных
Основа этой оптимизации будет заключаться в использовании - unordered set. Его реализацию вы можете встретить в c++, однако, может и реализовать ее сами.
Unordered_set может содержать ключ любого типа - предопределенную или определяемую пользователем структуру данных, но когда мы определяем ключ типа, определяемого пользователем, нам нужно указать нашу функцию сравнения, в соответствии с которой будут сравниваться ключи. По факту это единственная сложность в реализации данной структуры данных. Завтра обсудим, как же ее реализовать всё таки!
Data Science: Алгоритмы и Структуры данных
Задача: найти материнскую вершину в графе
Итак нам дан граф, нам нужно найти материнскую вершину.
Материнской вершиной в графе G = (V, E) называется вершина v такая, что все остальные вершины в G могут быть достигнуты путем из v.
Есть несколько кейсов, которые позволяют это сделать.
1. Ненаправленный связанный граф - в этом случае все вершины являются материнскими вершинами, поскольку мы можем достичь все другие узлы в графе из выбранного
2. Ненаправленный/Направленный исключенный граф - в этом случае нет материнских вершин, поскольку мы не можем достичь всех узлов из выбранного
3. Направленный связнфй граф - в этом случае мы должны найти вершину v в графе, что удостоена условию "маринский"
Data Science: Алгоритмы и Структуры данных
Итак нам дан граф, нам нужно найти материнскую вершину.
Материнской вершиной в графе G = (V, E) называется вершина v такая, что все остальные вершины в G могут быть достигнуты путем из v.
Есть несколько кейсов, которые позволяют это сделать.
1. Ненаправленный связанный граф - в этом случае все вершины являются материнскими вершинами, поскольку мы можем достичь все другие узлы в графе из выбранного
2. Ненаправленный/Направленный исключенный граф - в этом случае нет материнских вершин, поскольку мы не можем достичь всех узлов из выбранного
3. Направленный связнфй граф - в этом случае мы должны найти вершину v в графе, что удостоена условию "маринский"
Data Science: Алгоритмы и Структуры данных
❤1