Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- void BubleSort(int[], int);
- void SelectionSort (int[], int);
- void InsertionSort(int[], int);
- void CountingSort (int[], int);
- int main()
- {
- cout<<"Cate elemente are vectorul"<<endl; int n; cin>>n;
- int v[n];
- cout<<"Introdu elemntele vectorului"<<endl;
- for (int i=0; i<n; i++) cin>>v[i];
- cout<<"Vectorul sortat este"<<endl;
- //BubleSort(v, n);
- //SelectionSort(v, n);
- //InsertionSort(v, n);
- CountingSort(v, n);
- return 0;
- }
- void BubleSort (int v[], int n){
- int ok;
- do{
- ok=1;
- for (int i=0; i<n-1; i++){
- if (v[i]>v[i+1]){
- swap(v[i], v[i+1]);
- ok=0;
- }
- }
- }while (!ok);
- for (int i=0; i<n; i++) cout<<v[i]<<" ";
- }
- void SelectionSort (int v[], int n){
- int ind;
- for (int m=n-1; m>=0; m--){
- int nmax=v[m];
- for (int i=0; i<=m; i++){
- if (v[i]>nmax){
- nmax=v[i];
- ind=i;
- }
- }
- swap (v[m], v[ind]);
- }
- for (int i=0; i<n; i++) cout<<v[i]<<" ";
- }
- void InsertionSort(int v[], int n){
- for (int i=1; i<n; i++){
- int arr = v[i];
- int ind=i-1;
- while (ind>=0 && arr < v[ind]){
- v[ind+1]=v[ind];
- ind--;
- }
- v[ind+1]=arr;
- }
- for (int i=0; i<n; i++) cout<<v[i]<<" ";
- }
- void CountingSort (int v[], int n){
- int b[n], c[n];
- for (int i=0; i<n; i++) b[i]=0;
- for (int i=0; i<n-1; i++){
- for (int j=i+1; j<n; j++){
- if (v[i]>v[j]) b[i]++;
- else b[j]++;
- }
- }
- for (int i=0; i<n; i++) c[b[i]]=v[i];
- for (int i=0; i<n; i++) cout<<c[i]<<" ";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement