Improved version of Binary Tree Level Order Traversal

Add a direction for zigzag traversal.

  • change direction when level ends.
  • add to the level head or tail depends on direction