Існує кілька алгоритмів, які визначають у поліноміальний час, чи можна малювати графік у площині чи ні, навіть багато з лінійним часом виконання. Однак я не зміг знайти дуже простий алгоритм, який можна було б легко та швидко пояснити на уроці та показав би, що ПЛАНАРНІСТЬ є в П. Чи знаєте ви?
Якщо потрібно, ви можете використовувати теорему Куратовського чи Фаррі, але без глибоких речей, як, наприклад, другорядну теорему графа. Також зауважте, що мені не байдуже час роботи, я просто хочу щось поліноміальне.
Нижче наведено три найкращі алгоритми, що показують простоту / не глибоку теорію, необхідну для компромісу.
Алгоритм 1: Використовуючи це, ми можемо перевірити, чи містить графік або K 3 , 3 як мінор у поліноміальний час, ми отримуємо дуже простий алгоритм, використовуючи глибоку теорію. (Зауважте, що ця теорія вже використовує вбудовування графів, на що вказував Саїд, тому це не справжній алгоритмічний підхід, а щось просто сказати студентам, які вже знали / приймали другорядну теорему графа.)
Алгоритм 2 [на основі чиєїсь відповіді]: Неважко зрозуміти, що достатньо мати справу з 3-х сполученими графами. Для цього знайдіть обличчя, а потім застосуйте весняну теорему Тутта.
Алгоритм 3 [рекомендований Юхо]: алгоритм Демукрона, Малгранжа та Пертуайсе (DMP). Намалюй цикл, компоненти решти графа називаємо фрагментами, ми вбудовуємо їх відповідним чином (тим часом створюючи нові фрагменти). Цей підхід не використовує інших теорем.