Sunteți pe pagina 1din 3

INTERCLASARE

Interclasare
Acest algoritm functioneaza doar dacă avem doi vectori ce au elementele
stocate în ordine crescătoare (sau descrescătoare). Scopul acestui algoritm este
să creeze un al treilea vector ce conține elementele din cei doi vectori păstrând
ordinea inițială.

1 2 3 1 2 3 4

•8 • 12 • 20 •1 •4 •7 • 15

1 2 3 4 6 7 8

•1 •4 •7 •8 • 12 • 15 • 20

prof. Oprea Marilena


#include using namespace std;
int main()
{ int a[100], b[100], c[200];
int n, m, k = 0;
cout << "introduceti elemente corespunzatoare vectorului a: ";cin >> n; for(int i = 0; i < n; i++ ) cin >> a[i];
cout << "introduceti elementlee corespunzatoare vectorului b: "; cin >> m; for(int i = 0; i < m; i++) cin >> b[i];
//elementele din a si b sunt sortate sau le vom sorta pentru a fi siguri ca sunt in ordine crescatoare/descrescatoare
int i = 0, j = 0;
while(i < n && j < m)
{ if(a[i] < b[j])
{ c[k] = a[i]; k++; i++; }
else
{ c[k] = b[j]; k++; j++; }
}
while(i<n){ c[k] = a[p]; k++;p++; }
while(j<m){{ c[k] = b[p]; k++; } }
for(int p = 0; p < k; p++) cout << c[p] << " "; return 0;
}
prof. Oprea Marilena

S-ar putea să vă placă și