Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- //BUBBLE SORT
- void swap(int &x, int &y)
- {
- int temp = x;
- x = y;
- y = temp;
- }
- void bbsort(int v[], int n)
- {
- int i, j;
- bool flag = true;
- for(i = 0; i < n-1; i++)
- {
- if(flag == false)
- break;
- flag = false;
- for(j = 0; j < n-1-i; j++)
- if(v[j] > v[j+1])
- {
- swap(v[j], v[j+1]);
- flag = true;
- }
- }
- }
- //INTERSCHIMBARE DIRECTA
- void interschimbareDirecta(int v[], int n)
- {
- int i, j;
- for(i = 0; i < n-1; i++)
- for(j = i+1; j< n; j++)
- {
- if(v[i] > v[j])
- swap(v[i], v[j]);
- for(int k = 0; k < n; k++)
- cout<<v[k]<<" ";
- cout<<endl;
- }
- }
- //SELECTION SORT
- void selectSort(int v[], int n)
- {
- int i, j, min_poz;
- for(i = 0; i < n-1; i++)
- {
- min_poz = i;
- for(j = i+1; j < n; j++)
- if(v[j] < v[min_poz])
- min_poz = j;
- swap(v[min_poz], v[i]);
- }
- }
- void insertionSort(int v[], int n)
- {
- int i, j, x;
- for(i = 1; i < n; i++)
- {
- x = v[i];
- j = i-1;
- while(j >= 0 && x < v[j])
- {
- v[j+1] = v[j];
- j--;
- }
- v[j+1] = x;
- }
- }
- void insertionSort1(int v[], int n)
- {
- int i, j, aux;
- for(i = 1; i < n; i++)
- {
- j = i;
- while(j > 0 && v[j] < v[j-1])
- {
- aux = v[j];
- v[j] = v[j-1];
- v[j-1] = aux;
- j--;
- }
- }
- }
- int cautare_binara(int v[], int l, int r, int x)
- {
- if(l > r)
- return -1;
- int m = (l + r) / 2;
- if(x == v[m])
- return m;
- if(v[m] > x)
- return cautare_binara(v, l, m-1, x);
- return cautare_binara(v, m+1, r, x);
- }
- int main()
- {
- int n, i;
- cout << "n = ";
- cin >> n;
- int v[n];
- for(i = 0; i < n; i++)
- cin >> v[i];
- cout << "Afisare vector: \n";
- for(i = 0; i < n; i++)
- cout <<v[i]<<" ";
- cout<<endl<<"*****************"<<endl;
- interschimbareDirecta(v, n);
- // bbsort(v, n);
- //selectSort(v, n);
- //insertionSort(v, n);
- cout<<"\nSortare:\n";
- for(i = 0; i < n; i++)
- cout <<v[i]<<" ";
- //int x = cautare_binara(v, 0, n-1, 9);
- //cout<<"\n Elementul este pe pozitia "<<x;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement