fork(1) download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. Node node = new Node(1);
  13. node.left = new Node(2);
  14. node.right = new Node(3);
  15. node.left.left = new Node(4);
  16. node.left.right = new Node(5);
  17. node.right.left = new Node(6);
  18. node.right.right = new Node(7);
  19. //System.out.println(node.data);
  20. printSpiral(node);
  21. }
  22.  
  23. static class Node {
  24. int data;
  25. Node left;
  26. Node right;
  27.  
  28. Node(int data) {
  29. this.data = data;
  30. }
  31.  
  32. }
  33.  
  34. static void printSpiral(Node node) {
  35. Queue<Node> queue = new LinkedList<>();
  36. boolean leftToRight = true;
  37. queue.add(node);
  38. while(!queue.isEmpty()) {
  39. Node queueElement = queue.poll();
  40. System.out.println(queueElement.data);
  41. if(leftToRight) {
  42. if(queueElement.left!=null) {
  43. queue.add(queueElement.left);
  44. }
  45. if(queueElement.right!=null) {
  46. queue.add(queueElement.right);
  47. }
  48. } else {
  49. if(queueElement.right!=null) {
  50. queue.add(queueElement.right);
  51. }
  52. if(queueElement.left!=null) {
  53. queue.add(queueElement.left);
  54. }
  55. }
  56. }
  57.  
  58. }
  59. }
Success #stdin #stdout 0.04s 2184192KB
stdin
Standard input is empty
stdout
1
2
3
4
5
6
7