A Linear Time Algorithm for Finding a Maximal Planar Subgraph Based on PC-Trees

  • Wen-Lian Hsu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3595)


In Shih & Hsu, a planarity test was introduced utilizing a data structure called PC-trees, generalized from PQ-trees. They illustrated that a PC-tree is more natural in representing planar graphs. Their algorithm starts by constructing a depth-first-search tree and adds all back edges to a vertex one by one. An important feature in the S&H algorithm is that, at each iteration, at most two terminal nodes need to be computed and the unique tree path between these two nodes provides essentially the boundary path of the newly formed biconnected component.

In this paper we modify their PC-tree algorithm and introduce the deferred planarity test (DPT), which has the added benefit of finding a maximal planar subgraph (MPS) in linear time when the given graph is not planar. DPT is an incremental algorithm, which only computes a partial terminal path at each iteration. DPT continually deletes back edges that could create a violation to the formation of those partial terminal paths so that, at the end, the subgraph constructed is guaranteed to be planar.

The key to the efficiency of the S&H and the DPT algorithms lies in their management on the creation and destruction of biconnected components in which the PC-tree plays a major role. Previously, there have been reports that the MPS problem can be solved in linear time. However, there was no concrete data structure realizing them.


Planar Graph Terminal Node Planarity Test Back Edge Boundary Cycle 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Booth, K.S., Lueker, G.S.: Testing the consecutive ones property, interval graphs, and graph planarity using PQ-tree algorithms. J. Comput. Syst. Sci. 13, 335–379 (1976)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Boyer, J., Myvold, W.: Stop minding your P’s and Q’s: A simplified O(n) embedding algorithm. In: Proceedings of the Tenth Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 140–149 (1999)Google Scholar
  3. 3.
    Cai, J., Han, X., Tarjan, R.E.: An O(mlogn)-time algorithm for the maximal planar subgraph problem. SIAM J. Comput. 22, 1142–1162 (1993)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Chiba, N., Nishizeki, T., Abe, S., Ozawa, T.: A linear algorithm for embedding planar graphs using PQ-trees. J. Comput. Syst. Sci. 30, 54–76 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Hopcroft, J.E., Tarjan, R.E.: Efficient planarity testing. J. Assoc. Comput. Mach. 21, 549–568 (1974)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Hristo, D.: A Linear Algorithm for the Maximal Planar Subgraph Problem. In: Workshop on Algorithms and Data Structures, pp. 369–380 (1995)Google Scholar
  7. 7.
    Hsu, W.L.: Finding maximal planar subgraphs in linear time. In: Staples, J., Katoh, N., Eades, P., Moffat, A. (eds.) ISAAC 1995. LNCS, vol. 1004, Springer, Heidelberg (1995)Google Scholar
  8. 8.
    Hsu, W.L.: PC-trees vs. PQ-trees. In: Wang, J. (ed.) COCOON 2001. LNCS, vol. 2108, pp. 207–217. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  9. 9.
    Hsu, W.L., McConnell, R.: PQ Trees, PC Trees and Planar Graphs. In: Dinesh, P. (ed.) Mehta and Sartaj Sahni (eds) Handbook of Data Structures and Applications (2004)Google Scholar
  10. 10.
    Jayakumar, R., Thulasiraman, K., Swamy, M.: On O(n2) algorithms for graph planarization. IEEE Transactions on Computer-Aided Design 8, 257–267 (1989)CrossRefGoogle Scholar
  11. 11.
    Junger, M., Leipert, S., Mutzel, P.: A note on computing a maximal planar subgraph using PQ-Trees. IEEE Transactions on Computer-Aided Design 17, 609–612 (1998)CrossRefGoogle Scholar
  12. 12.
    Kant, G.: An O(n2) maximal planarization algorithm based on PQ-trees. Technical Report RUU-CS-92-03, Department of Computer Science, Utrecht Unvesity (1992)Google Scholar
  13. 13.
    Lempel, A., Even, S., Cederbaum, I.: An algorithm for planarity testing of graphs. In: Rosenstiehl, P., Gordon, Breach (eds.) Theory of Graphs, New York, pp. 215–232 (1967)Google Scholar
  14. 14.
    Mehlhorn, K.: Graph algorithms and NP-completeness. Data Structure and Algorithms 2, 93–122 (1984)Google Scholar
  15. 15.
    Mehlhorn, K., Mutzel, P.: On the embedding phase of the Hopcroft and Tarjan planarity testing algorithm. Algorithmica 16, 233–242 (1996)MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Small, J.: A unified approach of testing, embedding and drawing planar graphs. In: Proc. ALCOM International Workshop on Graph Drawing, Sevre, France (1993)Google Scholar
  17. 17.
    Shih, W.K., Hsu, W.L.: A simple test for planar graphs. In: Proceedings of the International Workshop on Discrete Math. and Algorithms, University of Hong Kong, pp. 110–122 (1993)Google Scholar
  18. 18.
    Shih, W.K., Hsu, W.L.: A new planarity test. Theoretical Computer Science 223, 179–191 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Stamm-Wilbrandt, H.: A simple linear-time algorithm for embedding maximal planar graphs. In: Proc. ALCOM International Workshop on Graph Drawing, Sere, France (1993)Google Scholar
  20. 20.
    Thomas, R.: Planarity in linear time – Lecture Notes. Georgia Institute of Technology (1997)Google Scholar
  21. 21.
    Williamson, S.G.: Depth-first search and Kuratowski subgraphs. J. ACM 31, 681–693 (1984)CrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Wen-Lian Hsu
    • 1
  1. 1.Institute of Information ScienceAcademia SinicaTaipeiTaiwan

Personalised recommendations