Learn basic concept of c , c++ and python programming in regularcodes.com

Spread the post

Level order traversal of binary tree

level order traversal of binary tree without recursion.

For example Given Binary tree are contain following nodes.

12475836910

Level order data is: 1 2 3 4 5 6 7 8 9 10. print level order traversal from left to right.

View pointers and nodes of tree.

Stack Areamainhead(pointer) NULLroot(pointer)tail(pointer) NULL Heap Areastruct Treedata (int)= 1left (pointer) right (pointer) struct Treedata (int)= 2left (pointer) right (pointer) struct Treedata (int)= 3left (pointer)= NULLright (pointer) struct Treedata (int)= 4left (pointer) right (pointer)= NULLstruct Treedata (int)= 5left (pointer)= NULLright (pointer) struct Treedata (int)= 6left (pointer) right (pointer)= NULLstruct Treedata (int)= 7left (pointer)= NULLright (pointer)= NULLstruct Treedata (int)= 8left (pointer)= NULLright (pointer)= NULLstruct Treedata (int)= 9left (pointer)= NULLright (pointer) struct Treedata (int)= 10left (pointer)= NULLright (pointer)= NULL

Try it Yourself

C program for level order traversal of binary tree using queue. Time complexity O(n).


Output

View process

Stack Areamainhead(pointer)root(pointer)tail(pointer)queue_recordauxiliary(pointer)head(pointer)root(pointer)tail(pointer) Heap Areastruct Treedata (int)= 1left (pointer) right (pointer) struct Treedata (int)= 2left (pointer) right (pointer) struct Treedata (int)= 3left (pointer)= NULLright (pointer) struct Treedata (int)= 4left (pointer) right (pointer)= NULLstruct Treedata (int)= 5left (pointer)= NULLright (pointer) struct Treedata (int)= 6left (pointer) right (pointer)= NULLstruct Treedata (int)= 7left (pointer)= NULLright (pointer)= NULLstruct Treedata (int)= 8left (pointer)= NULLright (pointer)= NULLstruct Treedata (int)= 9left (pointer)= NULLright (pointer) struct Treedata (int)= 10left (pointer)= NULLright (pointer)= NULLstruct Queuelevel (int)= 0link (pointer) next (pointer) struct Queuelevel (int)= 1link (pointer) next (pointer) struct Queuelevel (int)= 1link (pointer) next (pointer) struct Queuelevel (int)= 2link (pointer) next (pointer) struct Queuelevel (int)= 2link (pointer) next (pointer) struct Queuelevel (int)= 2link (pointer) next (pointer) struct Queuelevel (int)= 3link (pointer) next (pointer) struct Queuelevel (int)= 3link (pointer) next (pointer)= NULL

Try it Yourself

Spread the post

Recommended Posts: