Documente Academic
Documente Profesional
Documente Cultură
-vectori ce au elementele stocate in ordine crescatoare /descrescatoare. Scopul acestui algoritm este sa creeze un
al treilea vector ce contine elementele din cei doi vectori sortate crescator/descrescator.
o Comparam elementul Ai cu Bj
o Incrementam k
o Adaugam in C, pe pozitia k, elementul cel mai mic intre Ai cu Bj
o Incrementam indicele corespunzator vectorului din care am facut adaugarea (incrementam i daca
elementul Ai a fost mai mic, si in caz contrar, incrementam j)
o Daca i <= n atunci inseamna ca mai avem elemente in vectorul A, pe care le luam in ordine si le
adaugam la finalul vectorului C.
o Daca j <= m atunci inseamna ca mai avem elemente in vectorul B, pe care le luam in ordine si le
adaugam la finalul vectorului C.
cout << "Introduceti numarul de elemente corespunzator vectorului A: "; cin >>
n;
cout << "Introduceti elementele vectorului A: ";
for(int i = 0; i < n; i++)
cin >> A[i];
cout << "Introduceti numarul de elemente corespunzator vectorului B: "; cin >>
m;
cout << "Introduceti elementele vectorului B: ";
for(int i = 0; i < m; i++)
cin >> B[i];
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++;
}
}
if(i <= n)
{
for(int p = i; p < n; p++)
{
C[k] = A[p];
k++;
}
}
if(j <= m)
{
for(int p = j; p < m; p++)
{
C[k] = B[p];
k++;
}
}
Algoritmul verifica de mai multe ori daca m este egal cu valoarea elementului cautat de noi.
In cazul in care V[m] == x (unde x – este elementul cautat ) – algoritmul a gasit elementul cautat.
In caz contrar:
o daca x este mai mic decat V[m], d va devenii m+1
o daca x este mai mare decat V[m], s va devenii m-1