Unelte utilizator

Unelte site


laboratoare:laborator-03

Diferențe

Aici sunt prezentate diferențele dintre versiunile selectate și versiunea curentă a paginii.

Link către această vizualizare comparativă

Ambele părți revizuirea anterioară Versiuni anterioare
Urmatoarea versiune
Versiuni anterioare
Ultima versiune Ambele părți următoarea reviziune
laboratoare:laborator-03 [2017/03/05 19:17]
iulian.matesica [4.2 Exercitii alternative - schelet de laborator]
laboratoare:laborator-03 [2017/03/06 22:59]
mihai.iacov [2.2 Operații cu stive]
Linia 21: Linia 21:
 struct stack{ struct stack{
      int s[size];      int s[size];
-     int top;+     int top = -1;
 } st; } st;
 </file> </file>
Linia 45: Linia 45:
 int pop(){ int pop(){
      int item;      int item;
 +     if(st_empty())  //presupunem ca nu exista elemente
 +        return -1; //cu valoarea -1
      item = st.s[st.top];      item = st.s[st.top];
      st.top--;      st.top--;
Linia 69: Linia 71:
      int queue[size];      int queue[size];
      int rear = -1;      int rear = -1;
-}Q +     int front = 0
-int front = 0;+}Q;
 </file> </file>
  
Linia 76: Linia 78:
 <file cpp> <file cpp>
 int Qempty(){ int Qempty(){
-     if(front > rear)+     if(Q.front > Q.rear)
           return 1;           return 1;
      return 0;      return 0;
Linia 85: Linia 87:
 void Qinsert(int item){ void Qinsert(int item){
      Q.rear++;      Q.rear++;
-     Q.queue[Q.rear]==item;+     Q.queue[Q.rear] = item;
 } }
 </file> </file>
 * **Dequeue/ștergere** - șterge un element din coadă și îl returnează.Ștergerea se poate face doar la începutul cozii. * **Dequeue/ștergere** - șterge un element din coadă și îl returnează.Ștergerea se poate face doar la începutul cozii.
 <file cpp> <file cpp>
-void Qdelete(){+int Qdelete(){
      int item;      int item;
-     if( Qempty() ) +     if( Qempty() ) //in acest caz, alegem o valoare de return 
-          return -1;+          return -1; // ce NU poate fi confundata cu un element 
 +          //presupunem ca NU exista niciun element cu valoarea -1
      else {      else {
-          elem = Q.queue[Q.front]; +          item = Q.queue[Q.front]; 
-          front ++;+          Q.front ++;
           return item;           return item;
      }      }
Linia 144: Linia 147:
 Puteti folosi utilitarul ''%%wget%%'' pentru descarcare si utilitarul ''%%unzip%%'' pentru dezarhivare. Puteti folosi utilitarul ''%%wget%%'' pentru descarcare si utilitarul ''%%unzip%%'' pentru dezarhivare.
  
-  ''%%wget wget http://elf.cs.pub.ro/sda-ab/wiki/_media/laboratoare/lab2-skel.zip%%'' +  ''%%wget http://elf.cs.pub.ro/sda-ab/wiki/_media/laboratoare/lab2-skel.zip%%'' 
-  ''%%unzip lab2-skel.zip%%'+  ''%%unzip lab2-skel.zip%%''
  
  
Linia 185: Linia 188:
 Pentru compilare folositi comanda ''%%make%%''. Pentru rulare puteti folosi comanda ''%%make run%%''. Pentru compilare folositi comanda ''%%make%%''. Pentru rulare puteti folosi comanda ''%%make run%%''.
  
-  Pentru exercițiul ''1-stack'', executabilul rezultat în urma comenzii ''%%make%%'' se numește ''%%stack%%''+  Pentru exercițiul ''1-stack'', executabilul rezultat în urma comenzii ''%%make%%'' se numește ''%%stack%%''
-  Pentru exercițiul ''2-queue'', executabilul rezultat în urma comenzii ''%%make%%'' se numește ''%%queue%%''+  Pentru exercițiul ''2-queue'', executabilul rezultat în urma comenzii ''%%make%%'' se numește ''%%queue%%''
  
 ===4.2.2 Linux + Github=== ===4.2.2 Linux + Github===
laboratoare/laborator-03.txt · Ultima modificare: 2018/02/25 22:13 de către mihai.iacov