A complete binary tree is a binary tree in which every level, except possibly the last, is completely filled, and all nodes in the last level are as far left as possible. It can have between 1 and 2h nodes at the last level h. An alternative definition is a perfect tree whose rightmost leaves (perhaps all) have been removed. Some authors use the term complete to refer instead to a perfect binary tree as defined below, in which case they call this type of tree (with a possibly not filled last level) an almost complete binary tree or nearly complete binary tree. A complete binary tree can be efficiently represented using an array.
Does that mean
a complete binary tree can have at most one node with exactly a child (or can a complete binary tree has at least two nodes with just one child?)
in a complete binary tree, a node with exactly a child can only have a left child not a right child.
in a complete binary tree, a node with exactly a child can exist only at the level next to the last one, and at that level, all the nodes left to the node must have two children, and all the nodes right to the node must be leaves?
Conversely, do the above three points characterize a complete binary tree?