Advertisement
Guest User

kolos123

a guest
May 22nd, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.77 KB | None | 0 0
  1. ##################### WSTAWIANIE tam gdzie int n######################
  2. void lista::Insert(int dane, int n)
  3. {
  4. Node* nowy = new Node(dane);
  5. if(n == 1)
  6. {
  7. nowy->next=head;
  8. head=nowy;
  9. return;
  10. }
  11. Node* temp2 = head;
  12. int i;
  13. for(i=0; i<n-2; i++)
  14. temp2 = temp2->next;
  15.  
  16. nowy->next = temp2->next;
  17. temp2->next = nowy;
  18. }
  19. ###################### USUWANIE W MIEJSCU N ##########################
  20. void lista::Delete(int n)
  21. {
  22. Node* temp1 = head;
  23.  
  24. if(n==1)
  25. {
  26. head = temp1->next;
  27. delete temp1;
  28. return;
  29. }
  30.  
  31. int i;
  32. for(i=0; i<n-2; i++)
  33. temp1 = temp1->next; //n-1 node
  34.  
  35. Node* temp2 = temp1->next; //n node
  36.  
  37. temp1->next = temp2->next;
  38. delete temp2;
  39. }
  40.  
  41. #################### CIAGI #############################
  42. void Sznur::usun(int a)
  43. {
  44. Node* walker = head;
  45. Node* prev = NULL;
  46. int i;
  47.  
  48. while(walker!=NULL)
  49. {
  50. for(i=0; i<a && walker!=NULL; i++)
  51. {
  52. prev = walker;
  53. walker = walker->next;
  54. }
  55. while(walker!=NULL && walker->value%2!=0)
  56. {
  57. Node* killer = walker;
  58. walker = walker->next;
  59. prev->next = walker;
  60. delete killer;
  61. }
  62. }
  63.  
  64. }
  65.  
  66.  
  67. #################### CZWORKI #####################
  68. void Sznur::usun() {
  69. int times = counter/4;
  70. Node* walker = head;
  71. int elem_1, elem_2, elem_3;
  72.  
  73. Node* K1 = head;
  74. Node* K2=NULL;
  75. Node* K3=NULL;
  76. Node* K4=NULL;
  77. Node* prev=head;
  78.  
  79. cout << endl << "TIMES: " << times << endl;
  80. for(int i=0;i<times;i++)
  81. {
  82. for(int j=0;j<4;j++)
  83. {
  84. if(j==0)
  85. elem_1 = walker->value;
  86. else if(j==1)
  87. elem_2 = walker->value;
  88. else if(j==2)
  89. elem_3 = walker->value;
  90.  
  91. walker = walker->next;
  92. }
  93.  
  94. K2 = K1->next;
  95. K3 = K2->next;
  96. K4 = K3->next;
  97. if(elem_3%elem_1==0 && elem_3%elem_2==0)
  98. {
  99. if(K1==head)
  100. {
  101. head=walker;
  102. delete K1;
  103. delete K2;
  104. delete K3;
  105. delete K4;
  106. }
  107. else
  108. {
  109. prev=head;
  110. while(prev->next != K1)
  111. {
  112. prev=prev->next;
  113. }
  114.  
  115. prev->next = walker;
  116. delete K1;
  117. delete K2;
  118. delete K3;
  119. delete K4;
  120. }
  121.  
  122. }
  123. else
  124. {
  125. K3->next = walker;
  126. delete K4;
  127. }
  128.  
  129. if(walker==NULL) return;
  130. K1 = walker;
  131. }
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement