/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Node node = new Node(1);
node.left = new Node(2);
node.right = new Node(3);
node.left.left = new Node(4);
node.left.right = new Node(5);
node.right.left = new Node(6);
node.right.right = new Node(7);
//System.out.println(node.data);
printSpiral(node);
}
static class Node {
int data;
Node left;
Node right;
Node(int data) {
this.data = data;
}
}
/*
1
2 3
4 5 6 7
*/
static void printSpiral(Node node) {
Queue<Node> queue = new LinkedList<>();
boolean leftToRight = true;
queue.add(node);
while(!queue.isEmpty()) {
Node queueElement = queue.poll();
System.
out.
println(queueElement.
data); if(leftToRight) {
if(queueElement.left!=null) {
queue.add(queueElement.left);
}
if(queueElement.right!=null) {
queue.add(queueElement.right);
}
} else {
if(queueElement.right!=null) {
queue.add(queueElement.right);
}
if(queueElement.left!=null) {
queue.add(queueElement.left);
}
}
leftToRight = !leftToRight;
}
}
}