Hay varios algoritmos que deciden en tiempo polinómico si un gráfico se puede dibujar en el plano o no, incluso muchos con un tiempo de ejecución lineal. Sin embargo, no pude encontrar un algoritmo muy simple que uno pudiera explicar fácil y rápidamente en clase y mostrara que PLANARITY está en P. ¿Conoces alguno?
Si es necesario, puede usar el teorema de Kuratowski o Fary, pero no cosas profundas, como el teorema menor del gráfico. También tenga en cuenta que no me importa el tiempo de ejecución, solo quiero algo polinomial.
A continuación se muestran los 3 mejores algoritmos hasta el momento, que muestran una compensación simple / sin teoría profunda.
Algoritmo 1: Utilizando eso podemos verificar si un gráfico contiene un o un como menor en tiempo polinómico, obtenemos un algoritmo muy simple usando la teoría profunda. (Tenga en cuenta que esta teoría ya usa incrustaciones de gráficos, como lo señala Saeed, por lo que este no es un enfoque algorítmico real, solo algo simple para decirles a los estudiantes que ya sabían / aceptaron el teorema menor del gráfico).K 3 , 3
Algoritmo 2 [basado en la respuesta de alguien]: es fácil ver que es suficiente para lidiar con gráficos conectados a 3. Para estos, encuentre una cara y luego aplique el teorema de primavera de Tutte.
Algoritmo 3 [recomendado por Juho]: algoritmo Demoucron, Malgrange y Pertuiset (DMP). Dibuje un ciclo, los componentes del gráfico restante se denominan fragmentos, los incrustamos de manera adecuada (mientras creamos nuevos fragmentos). Este enfoque no utiliza otros teoremas.