Documente Academic
Documente Profesional
Documente Cultură
Prin această metodă se parcurge vectorul și se compară fiecare element cu succesorul său.
Dacă nu sunt în ordine cele două elemente se interschimbă între ele. Vectorul se parcurge de
mai multe ori, până când la o parcurgere completă nu se mai execută nicio interschimbare
între elemente (vectorul este sortat).
La efectuarea unei interschimbari se marchează această operaţie prin valoarea "FALSE" (0) a
unei variabile logice care, înainte de parcurgere va avea valoarea "TRUE" (1). La sfârşitul
algoritmului valoarea acestei variabile va fi "TRUE", pentru că nu va mai fi necesară nici o
interschimbare.
int main(){
int n, v[100], i,aux, sortat;
cout<<"n="; cin>>n;
for (i = 1; i <= n; i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i]; } do{
sortat = 1; for (i =
1; i <= n-1; i++){ if
(v[i] > v[i+1]){
aux = v[i]; v[i]
= v[i+1];
v[i+1] = aux;
sortat = 0;
}
}
}while(sortat == 0);