kookkkiiii

listi(28.03.2019)

Mar 28th, 2019
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.94 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. struct jazol
  6. {
  7. int info;
  8. jazol *link;
  9. };
  10.  
  11. struct lista
  12. {
  13.     jazol *head;
  14.     void init();
  15.     void dodadiPrv(int el);
  16.     void dodadiPos(int el);
  17.     void brisiPrv();
  18.     void brisiPos();
  19.     void pechati();
  20.     void brisiLista();
  21. };
  22.  
  23. void lista::init()
  24. {
  25.     head = NULL;
  26. }
  27.  
  28. void lista::dodadiPrv(int el)
  29. {
  30.     jazol *pom = new jazol;
  31.     pom->info = el;
  32.     pom->link = head;
  33.     head = pom;
  34. }
  35.  
  36. void lista::dodadiPos(int el)
  37. {
  38.     jazol *pom = new jazol;
  39.     pom->info = el;
  40.     pom->link = NULL;
  41.     jazol *dvizi = head;
  42.     if(dvizi==NULL)
  43.     {
  44.         head = pom;
  45.         return;
  46.     }
  47.     while(dvizi->link!=NULL)
  48.         dvizi = dvizi->link;
  49.  
  50.     dvizi->link = pom;
  51. }
  52.  
  53. void lista::brisiPrv()
  54. {
  55.     jazol *pom;
  56.     if(head == NULL)
  57.     {
  58.         return;
  59.     }
  60.     if(head->link == NULL)
  61.     {
  62.         delete head;
  63.         head == NULL;
  64.         return;
  65.     }
  66.     pom = head;
  67.     head = head->link;
  68.     delete pom;
  69. }
  70.  
  71. void lista::brisiPos()
  72. {
  73.     jazol *pom;
  74.     if(head == NULL)
  75.     {
  76.         return;
  77.     }
  78.     if(head->link == NULL)
  79.     {
  80.         delete head;
  81.         head == NULL;
  82.         return;
  83.     }
  84.     jazol *dvizi = head;
  85.     while((dvizi->link)->link != NULL)
  86.         dvizi = dvizi->link;
  87.  
  88.     pom = dvizi->link;
  89.     dvizi->link = NULL;
  90.     delete pom;
  91. }
  92.  
  93. void lista::brisiLista()
  94. {
  95.     while(head != NULL)
  96.         lista::brisiPrv();
  97. }
  98.  
  99. void lista::pechati()
  100. {
  101.     jazol *dvizi=head;
  102.     if(dvizi == NULL)
  103.     {
  104.         cout<<"Listata e prazna"<<endl;
  105.         return;
  106.     }
  107.     while(dvizi != NULL)
  108.     {
  109.         cout<<dvizi->info<<endl;
  110.         dvizi=dvizi->link;
  111.     }
  112. }
  113.  
  114.  
  115.  
  116. int main()
  117. {
  118.     lista L1;
  119.     L1.init();
  120.     L1.dodadiPrv(1);
  121.     L1.dodadiPos(2);
  122.     L1.dodadiPos(3);
  123.     L1.dodadiPos(4);
  124.     L1.pechati();
  125.     L1.brisiPos();
  126.     L1.dodadiPos(6);
  127.     L1.pechati();
  128.  
  129.     return 0;
  130.  
  131. }
Advertisement
Add Comment
Please, Sign In to add comment