Existem vários algoritmos que decidem no tempo polinomial se um gráfico pode ser desenhado no plano ou não, mesmo muitos com um tempo de execução linear. No entanto, não consegui encontrar um algoritmo muito simples que se pudesse explicar com facilidade e rapidez na aula e mostraria que PLANARITY está em P. Você conhece algum?
Se necessário, você pode usar o teorema de Kuratowski ou Fary, mas nada profundo, como o teorema do gráfico menor. Observe também que não me importo com o tempo de execução, apenas quero algo polinomial.
Abaixo estão os 3 melhores algoritmos até agora, mostrando uma troca de simplicidade / sem necessidade de teoria profunda.
Algoritmo 1: Usando isso, podemos verificar se um gráfico contém um ou um K 3 , 3 como menor no tempo polinomial, obtemos um algoritmo muito simples usando a teoria profunda. (Observe que essa teoria já usa incorporação de gráficos, como apontado por Saeed, portanto essa não é uma abordagem algorítmica real, apenas algo simples para dizer aos alunos que já conheciam / aceitaram o teorema menor do gráfico.)
Algoritmo 2 [baseado na resposta de alguém]: É fácil ver que é suficiente lidar com gráficos de 3 conexões. Para isso, encontre um rosto e aplique o teorema da mola de Tutte.
Algoritmo 3 [recomendado por Juho]: algoritmo Demoucron, Malgrange e Pertuiset (DMP). Desenhe um ciclo, os componentes do gráfico restante são chamados fragmentos, os incorporamos de maneira adequada (enquanto isso cria novos fragmentos). Essa abordagem não usa outros teoremas.