Unelte utilizator

Unelte site


laboratoare:laborator-08

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
Urmatoarea versiune Ambele părți următoarea reviziune
laboratoare:laborator-08 [2017/04/19 22:49]
iulian.matesica [3.3 Insertion sort]
laboratoare:laborator-08 [2017/04/20 20:53]
iulian.matesica [4. Exerciţii]
Linia 67: Linia 67:
 void bubble(int a[],int n) void bubble(int a[],int n)
 { {
- int i,schimbat,aux; +    int i,schimbat,aux; 
- do +    do { 
- +        schimbat = 0; 
- schimbat = 0; +        // parcurgem vectorul 
- for(i = 0; i < n-1; i++) //parcurgem vectorul +        for(i = 0; i < n-1; i++) { 
- if(a[i] < a[i+1]) //daca valoarea i din vectorul a este +     // daca valoarea i din vectorul a este mai mica decat cea de pe pozitia i+1 
- //mai mica decat cea de pe pozitia i+1 +            if (a[i] < a[i+1])  
- { //interschimbare +                // interschimbare 
- aux = a[i]; +         aux = a[i]; 
- a[i] = a[i+1]; + a[i] = a[i+1]; 
- a[i+1] = aux; + a[i+1] = aux; 
- schimbat = 1; + schimbat = 1; 
- +     } 
- }while(schimbat);+        
 +    } while(schimbat);
 } }
 </file> </file>
Linia 175: Linia 176:
 ordonată la un moment dat şi interclasată cu o altă secvenţă din vector corespunzătoare. ordonată la un moment dat şi interclasată cu o altă secvenţă din vector corespunzătoare.
  *practic, interclasarea va începe când se ajunge la o secvenţă formată din două elemente. Aceasta, odată ordonată, se va interclasa cu o alta corespunzătoare(cu 2 elemente). Cele două secvenţe vor alcătui un subşir ordonat din vector mai mare(cu 4 elemente) care, la rândul lui, se va interclasa cu un subşir corespunzător(cu 4 elemente) ş.a.m.d.  *practic, interclasarea va începe când se ajunge la o secvenţă formată din două elemente. Aceasta, odată ordonată, se va interclasa cu o alta corespunzătoare(cu 2 elemente). Cele două secvenţe vor alcătui un subşir ordonat din vector mai mare(cu 4 elemente) care, la rândul lui, se va interclasa cu un subşir corespunzător(cu 4 elemente) ş.a.m.d.
 +
 +{{ :laboratoare:merge-sort-example-300px.gif?nolink |}}
  
 ===Implementare :=== ===Implementare :===
Linia 266: Linia 269:
  
 Puteţi utiliza următorul model pentru exerciţiile propuse: {{ :laboratoare:scheletsortare.zip |}} Puteţi utiliza următorul model pentru exerciţiile propuse: {{ :laboratoare:scheletsortare.zip |}}
 +
 +===== 4. Exerciţii de laborator (Linux) =====
 +Pentru acest laborator puteți descărca scheletul de cod de [[http://elf.cs.pub.ro/sda-ab/wiki/_media/laboratoare/lab8_sortari-skel.zip|aici]]. Descărcați arhiva și dezarhivați-o. 
 +
 +=== Linux===
 +Puteti folosi utilitarul ''%%wget%%'' pentru descarcare si utilitarul ''%%unzip%%'' pentru dezarhivare.
 +
 +  * ''%%wget http://elf.cs.pub.ro/sda-ab/wiki/_media/laboratoare/lab8_sortari-skel.zip%%''
 +  * ''%%unzip lab8_sortari-skel.zip%%''
 +
 +Pentru compilare folositi comanda ''%%make%%''. Pentru rulare puteti folosi comanda ''%%make run%%'' sau ''%%./sort%%''.
  
laboratoare/laborator-08.txt · Ultima modificare: 2018/04/23 22:48 de către mihai.iacov