Список алгоритмів

Нижче наведений не вичерпний список алгоритмів.

Комбінаторні алгоритми

Обхід графа

Сортування

Компонента зв'язності графа

  • Алгоритм Косараджу (матриця суміжності , список суміжності ) — алгоритм для знаходження компонент сильної зв'язності орієнтованого графа
  • Міст  — ребро, видалення якого збільшує кількість компонент зв'язності
  • Двозв'язна компонента (Шарнір) — вершина, видалення якого збільшує кількість компонент зв'язності
  • Алгоритм Габова — компонент сильної зв'язності по шляхах
  • Алгоритм Тар'яна

Побудова кістякового дерева

Пошук найкоротшого шляху

  • Алгоритм Дейкстри () — обчислює найкоротший шлях у графі з невід'ємними вагами ребер
  • Алгоритм Флойда — Воршелла () — розв'язує проблему знаходження всіх пар найкоротших шляхів в підвішеному направленому графі
  • Алгоритм Джонсона () — обчислює найкоротші шляхи між усіма парами вершин зваженого орієнтованого графа
  • Алгоритм Беллмана — Форда () — знаходить найкоротші шляхи у зваженому графі (де деякі ваги ребер можуть бути негативними)
  • Алгоритм Левіта — знаходження найкоротших шляхів до всіх вершин
  • Алгоритм пошуку A* () — пошук найкоротшого шляху між двома вершинами з додатніми вагами ребер.
  • англ. Min-plus matrix multiplication
  • Алгоритм Данцига — знаходження найкоротших шляхів до всіх вершин планарний планарного спрямованого графа
  • Алгоритм Лі(Хвильовий алгоритм) — дозволяє знайти мінімальний шлях в графі з ребрами одиничної довжини.

Розфарбовування графів

Пошук найвигіднішого шляху

Потоки в мережах

  • Алгоритм Форда — Фалкерсона (1956) — обчислює максимальний потік у графі
  • Алгоритм Едмондса — Карпа (1969) — модифікація алгоритму Форда — Фалкерсона
  • Алгоритм Дініца (1970)
  • Алгоритм Едмондс - Карпа[прояснити] (1972) — локально-максимального збільшення
  • Алгоритм Дініца 2 (1973)
  • Алгоритм Карзанова (1974)
  • Алгоритм Черкаського (1977)
  • Алгоритм Малхотри — Кумара — Махешварі (1977)
  • Алгоритм Галіла (1980)
  • Алгоритм Галіла — Наамада (1980)
  • Алгоритм Слейтора — Тар'яна (1983)
  • Алгоритм Габо (1985)
  • Алгоритм Голдберга - Тар'яна (1988)
  • Алгоритм Ахьюа — Орліна (1989)
  • Алгоритм Ахьюа — Орліна — Тар'яна (1989)
  • Алгоритм Кінга — Рао — Тар'яна 1 (1992)
  • Алгоритм Кінга — Рао — Тар'яна 2 (1994)
  • Алгоритм Черіяна — Хейджрапа — Мехлхорна (1996)
  • Алгоритм Голдберга — Рао (1998)
  • Алгоритм Келнера — Мондри — Спілман — Тена (2010)
  • Алгоритм Орліна 1 (2012)
  • Алгоритм Орліна 2 (2012)

Кліки

  • Алгоритм Брона-Кербоша — пошуку всіх клік (знаходження найбільших максимальних незалежних по включенню множин вершин графа).

Цикли

Паросполучення

Ізоморфізм

Інше

  • Алгоритм на основі пружин — алгоритм для малювання графа
  • Неблокуючий мінімальний охоплюючий перемикач наприклад, для телефонного зв'язку
  • Алгоритм Ґірвана - Ньюмана — алгоритм пошуку спільнот в складних системах (соціальних мережах).

Алгоритми пошуку в масиві (списку,...) даних

Елементи впорядковані (відсортовані)

Елементи не впорядковані (не відсортовані)

Із створення нової структури

Пошук на рядках

Приблизний збіг

Сортування обміном

Сортування вибором

Сортування включенням

Сортування злиттям

Алгоритми без порівнянь

Гібридні

  • Timsort
  • Block sort
  • Introsort
  • Spreadsort

Інші

Імовірнісні алгоритми

  • Atlantic City algorithm
  • Лас-Вегас (алгоритм)
  • Метод Монте-Карло
  • Monte Carlo algorithm

Інформатика

Архітектура комп'ютера

Комп'ютерна графіка

Криптографічні алгоритми

Стиснення даних

Стиснення без втрат

Стиснення з втратами

Обчислювальна математика

Абстрактна алгебра

Алгоритми оптимізації

Обчислювальна геометрія

Задачі геометричного пошуку (запиту)

Локалізація точки

Побудова опуклої оболонки множини точок

Тріангуляція

Діаграма Вороного
  • Алгоритм Форчуна — алгоритм побудови діаграми Вороного через замітаючу пряму. Трудомісткість .

Перетин відрізків

Символьні обчислення

Теорія чисел (алгоритми)

Чисельні методи

Диференціальні рівняння

Елементарні та спеціальні функції

Інтерполяція та екстраполяція

Монте-Карло

Пошук коренів

Чисельне інтегрування

Розробка програмного забезпечення

Розподілені обчислення

  • Алгоритм вибору лідера — позначення одного процесу як організатора завдання, розподіленого між декількома вузлами.

Операційні системи

Алгоритми синхронизації процесів

Машинне навчання та статистична класифікація

Навчання з учителем

Навчання без учителя

  • ЕМ-алгоритм
  • Векторне квантування
  • Generative topographic map
  • Information bottleneck method

Навчання з підкріпленням

  • Temporal difference learning
  • Q-learning
  • Learning automata
  • State-Action-Reward-State-Action

Глибинне навчання

Інше

Інші

Аналіз потоків даних

  • Фільтр Блума
  • Алгоритм Флажолет — Мартіна)
  • Алгоритм Алона — Матіаса — Сцегді (Alon-Matias-Szegedy Algorithm)
  • Алгоритм ДГІМ (Datar-Gionis-Indyk-Motwani Algorithm)

Множення матриць

Інші

Див. також

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.