#include <iostream> using namespace std; int main() { int n,i,v[100],ok,aux; cin>>n; for(i=1;i<=n;i++) cin>>v[i]; do { ok=0; for(i=1;i<n;i++) if(v[i]>v[i+1]) { aux=v[i]; v[i]=v[i+1]; v[i+1]=aux; ok=1; } } while(ok==1); for(i=1;i<=n;i++) cout<<v[i]<<' '; return 0; }
Obs.
1. În cazul în care toate elementele sunt ordonate crescător, algoritmul realizează n-1 comparații și nicio interschimbare.
2. În cazul în care toate elementele sunt ordonate descrescător, algoritmul realizează:
n*(n-1) comparații
((n-1)*n)/2 interschimbări