Its level order traversal but its O(n^2) u search entire tree to check if the nodes level is i (say 0<= i <= height). i guess can use stack or queue to get O(n) complexity
On Nov 19, 2:58 pm, shady <[email protected]> wrote: > this doesn't seem like level order printing, because you are simply > printing the tree starting with the children as the root node. > > On Sat, Nov 19, 2011 at 12:57 PM, Ankuj Gupta <[email protected]> wrote: > > What is the time complexity of this code for Level Order Traversal. > > > void printLevel(BinaryTree *p, int level) { > > if (!p) return; > > if (level == 1) { > > cout << p->data << " "; > > } else { > > printLevel(p->left, level-1); > > printLevel(p->right, level-1); > > } > > } > > > void printLevelOrder(BinaryTree *root) { > > int height = maxHeight(root); > > for (int level = 1; level <= height; level++) { > > printLevel(root, level); > > cout << endl; > > } > > } > > > My guess is NlogN if tree is balanced if not it will be N^2. > > > -- > > You received this message because you are subscribed to the Google Groups > > "Algorithm Geeks" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]. > > For more options, visit this group at > >http://groups.google.com/group/algogeeks?hl=en. -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
