A data structure called PC-tree is introduced as a generalization of PQ-trees. PC-trees were originally introduced in a planarity test of Shih and Hsu [7] where they represent partial embeddings of planar graphs. PQ-trees were invented by Booth and Lueker [1] to test the consecutive ones property in matrices. The original implementation of the PQ-tree algorithms by Booth and Lueker using nine templates in each bottom-up iteration is rather complicated. Also the complexity analysis is rather intricate. We give a very simple linear time PC-tree algorithm with the following advantages: (1) it does not use any template; (2) at each iteration, it does all necessary tree-modification operations in one batch and does not involve the node-by-node bottom-up matching; (3) it can be used naturally to test the circular ones property in matrices; (4) the induced PQ-tree algorithm can considerably simplify Booth and Lueker’s modification of Lempel, Even and Cederbaum’s planarity test.