Упростите свой рабочий процесс: найдите miniwebtool.
Добавить
Домашняя страница > Математика > Продвинутые математические операции > Калькулятор топологической сортировки

Калькулятор топологической сортировки

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

Калькулятор топологической сортировки
Формат ребра: A -> B (также принимаются , =>, :). Макс. 80 вершин / 800 ребер.
Алгоритм Кана (лексикографический) дает уникальный, воспроизводимый порядок. Пост-порядок DFS — это классический метод поиска в глубину.

Embed Калькулятор топологической сортировки Widget

О Калькулятор топологической сортировки

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

Что такое топологическая сортировка?

Для данного ориентированного графа G = (V, E) топологическая сортировка (или топологический порядок) — это линейное расположение v₁, v₂, …, vₙ его вершин, такое, что для каждого ориентированного ребра (u → v) u появляется перед v в этом расположении. Топологический порядок существует тогда и только тогда, когда в графе нет направленных циклов, то есть граф является DAG. Порядок редко бывает уникальным: граф может иметь много допустимых топологических сортировок, когда сразу несколько вершин имеют нулевую степень захода.

Определение топологического порядка
Перестановка (v₁, v₂, …, vn) множества V является топологической тогда и только тогда,
когда для каждого ребра (u → v) в E: позиция(u) < позиция(v)

Алгоритмы, используемые в этом калькуляторе

Алгоритм Кана (на основе BFS, 1962)

Алгоритм Кана — самая интуитивно понятная топологическая сортировка. На каждом шаге он выбирает вершину с нулевой степенью захода (без входящих ребер), добавляет ее в выходные данные и «удаляет» ее из графа, уменьшая степень захода каждого из ее последователей. Когда несколько вершин имеют нулевую степень захода, для разрешения неоднозначности может использоваться min-heap (дающая лексикографически наименьший порядок) или очередь FIFO (дающая порядок вставки). Алгоритм Кана работает за время O(|V| + |E|) и служит детектором циклов: если после опустошения очереди какая-либо вершина все еще имеет степень захода > 0, значит, в графе есть цикл.

Алгоритм Кана (псевдокод)
Kahn(G):
  Q ← { v ∈ V : indeg(v) = 0 }
  L ← [ ]
  while Q не пуста:
    u ← Q.pop()
    L.append(u)
    for каждое ребро u → v:
      indeg(v) -= 1
      if indeg(v) = 0: Q.push(v)
  if |L| < |V|: сообщить о цикле
  else: вернуть L

Пост-порядок DFS (Тарьян, 1976)

Алгоритм DFS выполняет поиск в глубину, и когда вершина завершается (то есть все ее последователи были полностью исследованы), она помещается в стек. Реверсирование стека в конце дает допустимый топологический порядок. Обнаружение циклов происходит естественно: встреча с вершиной, которая все еще находится в процессе исследования (помечена СЕРЫМ), означает, что найдено обратное ребро, следовательно, граф не является DAG. Пост-порядок DFS также работает за время O(|V| + |E|).

Пост-порядок DFS (псевдокод)
DFS-Topo(G):
  for каждую вершину u в V: color[u] ← WHITE
  L ← пустой стек
  for каждую вершину u в V:
    if color[u] = WHITE: visit(u)
  return reverse(L)

visit(u):
  color[u] ← GRAY
  for каждое ребро u → v:
    if color[v] = GRAY: сообщить о цикле
    if color[v] = WHITE: visit(v)
  color[u] ← BLACK; L.push(u)

Слои параллельного выполнения

Послойное представление DAG разделяет его вершины на уровни так, что каждое ребро идет с уровня с меньшим номером на уровень с большим. Вершины в одном слое независимы друг от друга, поэтому они могут выполняться параллельно. Количество слоев равно длине самого длинного пути плюс один — это критический путь DAG, минимальное количество последовательных раундов, необходимых для завершения всех задач даже при неограниченном параллелизме. Этот калькулятор автоматически создает послойный вид, если входные данные являются DAG.

Обнаружение циклов

Если граф содержит ориентированный цикл, топологическая сортировка невозможна. Наш калькулятор сообщает точный путь цикла (например, A → B → C → A) и выделяет ребра цикла красным цветом на визуализации. Удаления любого одного ребра в цикле достаточно для восстановления ацикличности.

Форматы ввода

Список ребер

Записывайте каждое направленное ребро как источник -> цель, разделяя их запятыми или новыми строками. Допустимые варианты стрелок: ->, , =>, -->, :. Вы также можете объединять ребра в цепочки: A -> B -> C — это сокращение для A->B и B->C. Метки вершин могут состоять из букв, цифр, подчеркиваний, тире и точек.

A -> B, B -> C, A -> C
C -> D
Рубашка -> Галстук -> Пиджак

Список смежности

Запишите вершину, двоеточие и ее прямых последователей (вершины, на которые она указывает). Вершине без последователей все равно нужна своя строка, например D:.

A: B, C
B: D
C: D
D:

Как пользоваться этим калькулятором

  1. Выберите формат: Переключайтесь между списком ребер и списком смежности с помощью переключателей.
  2. Введите граф: Вставьте свои данные или нажмите на один из быстрых примеров (порядок одевания, учебные курсы, цели сборки, граф с циклом и другие).
  3. Выберите алгоритм: Лексикографический Кана для уникального, воспроизводимого порядка; порядок вставки для сохранения очередности ввода; пост-порядок DFS для классического метода поиска в глубину; или «Показать все», чтобы увидеть все варианты рядом.
  4. Нажмите «Сортировать топологически»: Ниже появятся порядок, данные об обнаружении цикла, послойный вид, длина критического пути, общее количество допустимых порядков и интерактивный граф.
  5. Исследуйте: Нажмите «Играть», чтобы увидеть выдачу каждой вершины шаг за шагом. Значки входящих степеней обновляются в реальном времени. Перетаскивайте любой узел для изменения компоновки.

Реальное применение

Системы сборки и компиляторы

Такие инструменты, как make, Bazel, Gradle и npm, выполняют топологическую сортировку целей сборки, чтобы каждая цель компилировалась только после всех своих зависимостей. Цикл в графе зависимостей обычно выдается как фатальная ошибка — система сборки не может решить, с чего начать.

Планирование задач

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

Планирование учебных курсов

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

Пересчет электронных таблиц

При изменении ячейки электронная таблица должна пересчитать каждую зависимую ячейку в порядке зависимости — это топологическая сортировка DAG зависимостей ячеек. Циклические ссылки отвергаются приложением.

Менеджеры пакетов и загрузчики плагинов

Apt, pip, Homebrew, Maven и бесчисленные фреймворки плагинов определяют порядок установки или загрузки путем топологической сортировки своих DAG зависимостей.

Разрешение символов и планирование инструкций

Компиляторы используют топологическую сортировку для упорядочивания объявлений, а процессоры используют DAG зависимостей данных для планирования инструкций в буфере переупорядочивания без нарушения зависимостей по данным.

Подсчет топологических порядков

Для DAG с n вершинами количество различных допустимых топологических порядков может варьироваться от 1 (для полностью упорядоченной цепи) до n! (для графа без ребер). Вычисление точного количества в общем случае является #P-полной задачей, но для графов до 16 вершин этот калькулятор перечисляет их, используя формулу динамического программирования по маскам: f(S) = Σ f(S ∪ {v}) по всем v ∉ S, чьи предшественники уже находятся в S.

Сложность и производительность

Часто задаваемые вопросы

Что такое топологическая сортировка?

Топологическая сортировка ориентированного ациклического графа — это линейное упорядочение его вершин, при котором каждое направленное ребро от u к v ставит u перед v. Она представляет собой допустимый порядок обработки задач с соблюдением их зависимостей.

Какой алгоритм использует этот калькулятор?

Калькулятор запускает как алгоритм Кана, так и пост-порядок DFS. Алгоритм Кана многократно удаляет вершину с нулевой степенью захода и уменьшает степени захода ее последователей. Пост-порядок DFS выполняет поиск в глубину и инвертирует порядок завершения. Оба работают за время O(|V| + |E|).

Что если в моем графе есть цикл?

Граф с ориентированным циклом не имеет топологической сортировки. Калькулятор обнаруживает цикл, выделяет его красным цветом на визуализации и сообщает точный путь цикла, чтобы вы могли видеть, какие ребра нужно удалить, чтобы сделать граф DAG.

Что такое лексикографически наименьший топологический порядок?

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

Что такое послойный вид или вид по уровням?

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

Может ли граф иметь несколько допустимых топологических порядков?

Да. Если на любом шаге алгоритма Кана имеется несколько вершин с нулевой степенью захода, любая из них может быть выбрана следующей. Этот калькулятор подсчитывает точное количество различных топологических порядков для графов до 16 вершин.

В чем разница между алгоритмом Кана и пост-порядком DFS?

Алгоритм Кана работает сверху вниз: он многократно выбирает источники (степень захода 0) и выдает их первыми. Пост-порядок DFS работает снизу вверх: он сначала завершает стоки и добавляет их в начало порядка. Оба имеют сложность O(|V| + |E|) и создают допустимые топологические порядки, но обычно разные. Алгоритм Кана легче параллелизуется и адаптируется для лексикографического упорядочивания; DFS легче комбинировать с другими видами анализа на основе DFS, такими как поиск сильно связных компонентов.

Каков максимальный размер графа, поддерживаемый этим инструментом?

Калькулятор поддерживает до 80 вершин и 800 ребер. Подсчет общего количества допустимых топологических порядков ограничен 16 вершинами, так как задача является #P-полной и пространство состояний растет как 2ⁿ. Интерактивная визуализация и анимация алгоритмов плавно масштабируются до полного размера.

Дополнительная литература

Ссылайтесь на этот контент, страницу или инструмент так:

"Калькулятор топологической сортировки" на сайте https://ru.miniWebtool.com/калькулятор-топологической-сортировки/ от MiniWebtool, https://MiniWebtool.com/

командой miniwebtool. Обновлено: 20 апреля 2026 г.

Вы также можете попробовать наш AI Решатель Математических Задач GPT, чтобы решить ваши математические проблемы с помощью вопросов и ответов на естественном языке.

Другие сопутствующие инструменты:

Продвинутые математические операции:

Избранные инструменты:

Калькулятор знака ВенерыКалькулятор совместимости в любвиКалькулятор ангельских чиселКалькулятор Фаренгейта в ЦельсияКалькулятор Солнечного, Лунного и Асцендентного Знаков 🌞🌙✨Извлечение Изображений из ВидеоОбъединить видеоКонвертер FPSКонвертер см в футы и дюймыАудио РазделительКалькулятор лунного знакаКалькулятор числа жизненного путиКонвертер футов и дюймов в сантиметрыВидео КомпрессорУдалить аудио из видеоКалькулятор числа судьбыИзменить скорость видеоДобавить текст к изображениюАудио ЭкстракторДобавить или заменить аудио в видеоКалькулятор знака МарсаРазделитель видеоРазделитель изображенийГенератор случайных цветовГенератор штрих-кодовГенератор маленького текста ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾Калькулятор совместимости лунных знаков⏱️ Калькулятор часовУдалить строки, содержащие строкуПовернуть видеоПоиск идентификатора пользователя InstagramMP3-луперКалькулятор угла срезаОбрезка ВидеоГенератор филвордовКалькулятор рабочего времениКалькулятор Рекомпозиции ТелаГенератор случайных английских словКалькулятор FIPКалькулятор баланса астрологических стихийКалькулятор дня года - какой сегодня день года?Бросок кубиковКалькулятор гипотенузыКалькулятор продолжительности времениРешатель Карты Карно (K-Map)Создатель GIFШестнадцатеричный калькуляторКалькулятор знака МеркурияКалькулятор Площади Неправильного МногоугольникаГенератор случайных предметовГенератор случайных фиктивных адресовКалькулятор калорий при беременностиКалькулятор числа имениКалькулятор возвращения СатурнаКалькулятор цены за тысячу показовКалькулятор Относительного Стандартного ОтклоненияКалькулятор теоремы ПифагораЗациклить видеоКонвертер MP4 в GIFКалькулятор процента жира в теле⏰ Калькулятор табеля рабочего времениПродвинутый анализатор совместимости знаков зодиакаКонвертер кг в фунтыВыбор Случайного ИмениГенератор кроссвордовГенератор случайных кредитных картГенератор случайного IMEIПобитовый калькуляторКалькулятор TDEEКонвертер дробного времениПроверка имени пользователя в социальных сетяхЦифровой калькулятор душиКалькулятор нумерологииКалькулятор коэффициентов и процентовПреобразователь двоичного кода в десятичныйКонвертер ГМС в десятичные градусыКакое у меня счастливое число?Генератор случайных животныхКалькулятор числа личностиКалькулятор калорий при грудном вскармливанииДобавить линию к изображениюКалькулятор прямоугольного треугольника⏱️ Таймер обратного отсчётаконвертер десятичной системы в двоичнуюКонвертер фунтов в килограммыКрутить колесоГенератор случайных суперспособностейКалькулятор сухой массы телаКонвертер десятичного числа в шестнадцатеричный📊 Создатель столбчатых диаграммУдаление Невидимых СимволовСлучайный выборСчётчик токенов ИИКалькулятор жима лежаКалькулятор уклона и классаГенератор невидимого текстаКонвертер HTML в текстГенератор случайной турнирной сеткиКалькулятор среднего отклоненияКалькулятор функции ошибкиСтатистика канала YouTubeКалькулятор количества цифрКонвертер HEIC в JPGДобавить водяной знак на видеоГенератор случайных строкОбратный текстГенератор случайных дней рожденияГенератор «Соедини точки»Двоичный в шестнадцатеричный конвертерКалькулятор теста Краскела-УоллисаГенератор случайного времениКалькулятор дефицита калорийКалькулятор дозировки лекарствКалькулятор области определения и значенийПоиск ID пользователя Facebookгенератор-нонограмм-пикроссКалькулятор дробейПреобразователь сахара в кровиЭкранирование и снятие экранирования строк JSONГенератор случайных эмодзи📅 Калькулятор датыГенератор случайных блюдКалькулятор коэффициента корреляцииГенератор карточек бингоКалькулятор Модульного Возведения в СтепеньКалькулятор числа выраженияКалькулятор ANOVAКалькулятор снаКалькулятор передаточного отношения велосипедаКалькулятор процентного уменьшенияКалькулятор СуммыКалькулятор уравнений с модулемГенератор лабиринтовГенератор случайных координатКалькулятор конвертации масштаба моделиСимулятор шифрования RSA пошаговыйСортировка чиселКонвертер сантиметров в дюймыПреобразователь Обычного Времени в Десятичное ВремяФорматировщик текстаКалькулятор модуляКалькулятор скорости езды на велосипедеКалькулятор усечённого конуса📈 Создатель линейных графиковГенератор красивого текстаИзвлекатель чиселКалькулятор одного повторного максимума (1ПМ)Калькулятор Процентного ИзмененияКалькулятор U-критерия Манна-УитниГенератор и решатель судокуИнвертор цвета🖱️ Счётчик кликовКалендарь ретроградного МеркурияКалькулятор двойных интеграловКалькулятор инфляции в СШАКалькулятор квадратного корня⬛ Калькулятор соотношения сторонКонвертер размера файлаСоздатель гистограммHEX-конвертерШестнадцатеричный преобразователь в десятичныйКалькулятор кубического корняКонвертер дюймов в сантиметрыОбратить ВидеоРешатель НеравенствКалькулятор перевода дроби в десятичное числоКалькулятор шагов в расстояниеТранспонировщик музыкальной тональности🌐 Конвертер часовых поясовГенератор случайных буквКалендарь новолуния и полнолунияКалькулятор подпорной стеныГенератор случайных стран🔊 Генератор тонов🎰 Калькулятор гарантии гачаКалькулятор Жордановой Нормальной ФормыДвоичный преобразовательИнтерактивный визуализатор единичной окружностиКалькулятор биномиального распределенияКалькулятор распределения ПуассонаКалькулятор типа телосложенияРандомизатор именГенератор диаграмм размаха (ящик с усами)Декодер азбуки МорзеКалькулятор вероятности броска кубиковКалькулятор среднего, медианы и модыКонвертер римских цифрКонвертер частоты и длины волныДвоичный калькуляторИнструмент для пикселизации изображенийКалькулятор минимального остовного дереваТестер вебхуковГенератор азбуки МорзеГенератор анаграммГенератор Случайных Математических ЗадачКалькулятор Итоговой ОценкиКалькулятор Стандартной ОшибкиКонвертер Метров в ФутыРандомизатор спискаТестер APIВизуализатор роста капиталаКалькулятор Стоимости ОбедаКалькулятор стоимости: спортзал против домашних тренировокКалькулятор расходов на кофеКалькулятор экономии на удалённой работеКалькулятор ROI ПодработкиТрекер расходов на подпискиКалькулятор цен SaaSКалькулятор стоимости фриланс-проектовГид по сочетанию древесины для копченияКалькулятор времени броженияКалькулятор времени маринованияФильтр рецептов по диетическим ограничениямПоиск Заменителей СпецийТрекер периода полураспада кофеинаКалькулятор стандартных порций алкоголяПодбор вина к блюдамКонвертер Категорий СкалолазанияКалькулятор Прочности Рыболовных УзловТаймер Удержания Поз ЙогиКалькулятор SWOLF для плаванияКалькулятор прогноза времени забегаКалькулятор силы удара в боксеКалькулятор очков регбиКалькулятор Run Rate в КрикетеКалькулятор xG (ожидаемых голов) в футболеСчётчик очков в теннисеКалькулятор шкалы Уэллса (ТГВ/ТЭЛА)Калькулятор шкалы комы ГлазгоКалькулятор шкалы АпгарКалькулятор FFMIКалькулятор 12-минутного бега КупераКалькулятор теста ходьбы на одну милю РокпортКалькулятор силы по сухой массе телаКалькулятор углеводно-инсулинового коэффициентаКалькулятор коэффициента чувствительности к инсулинуКонвертер еврейского календаряКонвертер календаря ХиджрыКонвертер лунного календаряКалькулятор возраста по культурамКалькулятор сколько лет назадКалькулятор сколько осталось доГенератор шаблонов датКалькулятор средней датыДобавить рабочие дни к датеКалькулятор рабочих днейАнализатор частотности словАнализатор вариативности длины предложенийРедактор Читаемости в Стиле ХемингуэяКонвертер произношения IPAИнструмент шифра ВиженераИнструмент шифра АтбашКодировщик и декодировщик ROT13Просмотр и удаление EXIF данныхПереводчик Свинячьей ЛатыниГенератор БэкронимовГенератор акронимовПроверка ПанграммПроверка липограммыТрассировщик изображения в SVGКонвертер изображения в ASCII артГенератор JSON схемПесочница TypeScriptКомпилятор Less в CSSКомпилятор SCSS в CSSКонвертер SVG в React/JSXКонструктор строки запросаПарсер URLВалидатор и декодер UUIDСправочник кодов состояния HTTPКонструктор команд cURLГенератор треугольника СерпинскогоПостроитель 3D-поверхностейПостроитель полярных уравненийГенератор множества ЖюлиаИсследователь множества МандельбротаГенератор фракталов L-SystemГенератор триангуляции ДелонеГенератор диаграмм ВороногоГенератор спирографаГенератор мозаикиКалькулятор возможностей процесса Шести СигмГенератор диаграмм ПаретоКалькулятор NPS (индекс потребительской лояльности)Калькулятор удержания по когортамКалькулятор оттока клиентовКалькулятор стоимости привлечения клиента (CAC)Калькулятор пожизненной ценности клиента CLVКалькулятор коэффициента конверсииКалькулятор размера выборки A/B тестаКалькулятор Значимости A/B ТестаКалькулятор уравнения линзыКалькулятор магнитного поля проводаКалькулятор Электрического ПоляКалькулятор Закона КулонаКалькулятор закона СнеллаКалькулятор момента инерцииКалькулятор угловой скоростиКалькулятор центростремительной силыКалькулятор периода маятникаКалькулятор жёсткости пружиныКалькулятор Эффекта ДоплераКалькулятор коэффициента СортиноКалькулятор коэффициента ТрейнораКалькулятор бета акцииКалькулятор казначейских облигаций с защитой от инфляции (TIPS)Калькулятор перерасчета ипотекиКалькулятор форвардной ставкиКалькулятор дюрации облигаций (Маколея и модифицированной)Калькулятор выпуклости облигацийКалькулятор Фиксированного Индексируемого АннуитетаКалькулятор переменной рентыКалькулятор обратной ипотекиКалькулятор аннуитетных выплатСимулятор Соробан — Японские СчётыУмножение Русских КрестьянКалькулятор Ведической МатематикиКалькулятор египетского умноженияКалькулятор математики с римскими цифрамиТренажёр Устного СчётаТест на таблицу умноженияВизуализатор переноса и заёмаГенератор разложений чиселРешатель задач с монетамиКалькулятор треугольника расстояние-скорость-времяРешатель задач на совместную работуРешатель задач на смесиРешатель задач на возрастРешатель задач о встрече поездовКалькулятор гидратацииКалькулятор Калорий по ТемпуКалькулятор калорий алкоголяГенератор случайных тем для дебатовГенератор случайных имен для кошек и собакГенератор случайных библейских стиховГенератор Случайных АбзацевГенератор случайных английских предложенийКалькулятор гравия, песка и грунтаКалькулятор веса сталиКалькулятор Момента Затяжки БолтовКалькулятор Потока в ТрубахКалькулятор нагрузки балкиКонвертер Доллар ЗолотоКалькулятор Вероятности ОпционовКалькулятор сплита акцийКалькулятор ESPPКалькулятор Пени за Просрочку СчетаКалькулятор часовой ставки фрилансераКалькулятор Лизинг против ПокупкиРасширенный калькулятор разделения чаевыхГенератор Списка ВещейКалькулятор джетлагаКалькулятор Бюджета ПоездкиКалькулятор расстояния полетаКалькулятор теплопотерьКалькулятор Стоимости Выработки ЭлектроэнергииКалькулятор расхода водыКалькулятор стоимости энергии бытовых приборовКалькулятор домашнего энергоаудитаКалькулятор ROI солнечной энергииКалькулятор солнечных панелейКалькулятор компоста C:NКалькулятор Удобрения для ГазонаКалькулятор дат заморозковКалькулятор грунта для высокой грядкиКалькулятор NPK удобренияКалькулятор процента всхожести семянКалькулятор битрейта видеоBPM Тэппер для МузыкиКалькулятор размера файла фотографииКалькулятор Мегапикселей в Размер ПечатиКалькулятор кроп-фактораКалькулятор треугольника экспозицииКалькулятор буксировочной способности автомобиляКалькулятор автолизингаКалькулятор 0–60 и четверти милиКалькулятор времени зарядки электромобиляКалькулятор Запаса Хода ЭлектромобиляКалькулятор Расстояния 3DКалькулятор тораКалькулятор правильного многоугольникаОпределитель конического сеченияКалькулятор гиперболыКалькулятор деления столбикомСчётчик Символов Twitter/XСлучайный выбор комментариев YouTubeИзвлечение тегов YouTubeЗагрузчик миниатюр YouTubeКалькулятор доходов YouTubeГенератор случайных персонажей RPG