Advertisement
Guest User

Untitled

a guest
Jan 17th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Link
  6. {
  7. private:
  8.  
  9. Link *Next;
  10. int *wsk;
  11.  
  12. Link(Link *n, int *w) :
  13.  
  14. Next(n),
  15. wsk(w)
  16. {}
  17.  
  18. friend class List;
  19. };
  20.  
  21. class List
  22. {
  23. private:
  24.  
  25. Link *First;
  26.  
  27. public:
  28.  
  29. List() :
  30. First(nullptr)
  31. {}
  32.  
  33. void dodaj(int liczba)
  34. {
  35. int *w = new int(liczba);
  36. First = new Link(First, w);
  37. }
  38.  
  39. void wyswietl()
  40. {
  41. for(Link *p = First; p; p = p->Next)
  42. {
  43. cout<<*(p->wsk)<<" ";
  44. }
  45. }
  46.  
  47. void usun(int wartosc)
  48. {
  49. if(First == nullptr)
  50. return;
  51.  
  52. while(First)
  53. {
  54. if(*(First->wsk) == wartosc)
  55. {
  56. Link *temp = First;
  57. First = First->Next;
  58. delete temp;
  59. }
  60.  
  61. else break;
  62. }
  63.  
  64. Link *p = First;
  65. while(p and p->Next)
  66. {
  67. if(*(p->Next->wsk) == wartosc)
  68. {
  69. Link *temp = p->Next;
  70. p->Next = temp->Next;
  71. delete temp;
  72. }
  73.  
  74. else p = p->Next;
  75. }
  76. }
  77. };
  78.  
  79. int main()
  80. {
  81. List lista;
  82.  
  83. int M, N, zmienna;
  84.  
  85. cin>>M;
  86.  
  87. for(int i = 0; i<M; i++)
  88. {
  89. cin>>zmienna;
  90. lista.dodaj(zmienna);
  91. }
  92.  
  93. cin>>N;
  94.  
  95. for(int i = 0; i<N; i++)
  96. {
  97. cin>>zmienna;
  98. lista.usun(zmienna);
  99. }
  100.  
  101. lista.wyswietl();
  102.  
  103. return 0;
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement