Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2016
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. package com.sumit.linkedlist;
  2.  
  3. import java.io.FileNotFoundException;
  4.  
  5. public class SplitAlternateNode {
  6.  
  7. public static void main(String[] args) throws FileNotFoundException {
  8. // TODO Auto-generated method stub
  9. Node head = null;
  10. CreateList cl = new CreateList();
  11. for (String s : FIleUtil.getValue("01Split.txt")) {
  12. head = cl.createList(head, Integer.parseInt(s));
  13. }
  14. cl.printList(head);
  15. new SplitAlternateNode().split(head);
  16. }
  17.  
  18. public void split(Node head, CreateList cl) {
  19. Node list = head;
  20. Node result1 = null;
  21. Node result2 = null;
  22. Node re1 = null;
  23. Node re2 = null;
  24. while (list != null) {
  25.  
  26. if (result1 == null) {
  27. result1 = list;
  28. // result1.setNext(null);
  29. list = list.getNext();
  30. re1 = result1;
  31. } else {
  32. result1.setNext(list);
  33. result1 = result1.getNext();
  34. list = list.getNext();
  35. }
  36. if (list != null) {
  37. if (result2 == null) {
  38. result2 = list;
  39. list = list.getNext();
  40. // result2.setNext(null);
  41. re2 = result2;
  42.  
  43. } else {
  44. result2.setNext(list);
  45. result2 = result2.getNext();
  46. list = list.getNext();
  47. }
  48. }
  49.  
  50. }
  51. System.out.println();
  52. // System.out.println("Re1 : "+re1.getData());
  53. while (re2 != null) {
  54. System.out.print(re2.getData() + ",");
  55. re2 = re2.getNext();
  56. }
  57. System.out.println();
  58. // System.out.println("Re1 : "+re1.getData());
  59. while (re1 != null) {
  60. System.out.print(re1.getData() + ",");
  61. re1 = re1.getNext();
  62. }
  63.  
  64. }
  65.  
  66. public void split(Node head) {
  67. Node t = head;
  68. Node t1 = head.getNext();
  69. Node n = head;
  70. Node n1 = null;
  71. if (head.getNext() != null) {
  72. n1 = head.getNext();
  73. }
  74. Node temp = n;
  75. Node temp1 = n1;
  76. while (t != null && t1 != null) {
  77.  
  78. if (t.getNext() != null && t.getNext().getNext() != null) {
  79. t = t.getNext().getNext();
  80. n.setNext(t);
  81. n = n.getNext();
  82.  
  83. } else {
  84. n.setNext(null);
  85. t = t.getNext();
  86. }
  87.  
  88. if (t1.getNext() != null && t1.getNext().getNext() != null) {
  89. t1 = t1.getNext().getNext();
  90. n1.setNext(t1);
  91. n1 = n1.getNext();
  92.  
  93. } else {
  94. n1.setNext(null);
  95. t1 = t1.getNext();
  96. }
  97.  
  98. }
  99. System.out.println();
  100. while (temp1 != null) {
  101. System.out.print(temp1.getData() + ",");
  102. temp1 = temp1.getNext();
  103. }
  104. }
  105.  
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement