Informatika gyűjtemény

NézetNyomtat

Programozási tételek: Összefuttatás

Feladat

Bemenet

Adatok két rendezett sorozata tömbben, fájlban vagy standard bemeneten ($X[1], X[2], \ldots, X[M]$ és $Y[1], Y[2], \ldots, Y[N]$).

Kimenet

A két sorozat (mint halmaz) rendezett uniója a Z[] tömbben. Tehát azok az elemek, amelyek mindkét sorozatban szerepelnek, csak egyszer kerülnek be Z-be.

Algoritmus

Adatok tömbben

:= 1; j := 1; DBZ := 0
Ciklus amíg i <=és j <= N
    DBZ := DBZ + 1
    Elágazás
        X[i] < Y[j] esetén Z[DBZ] := X[i]; i := i + 1
        X[i] = Y[j] esetén Z[DBZ] := X[i]; i := i + 1; j := j + 1
        X[i] > Y[j] esetén Z[DBZ] := Y[j]; j := j + 1
    Elágazás vége
Ciklus vége
Ciklus amíg i <= M 
    DBZ := DBZ + 1; Z[DBZ] := X[i]; i := i + 1
Ciklus vége
Ciklus amíg j <= N 
    DBZ := DBZ + 1; Z[DBZ] := Y[j]; j := j + 1
Ciklus vége

Példák

Feladatok