12. Halmazok II
Unió:
A U B = { X|X eleme A vagy X eleme B }
Az összefuttatás tétel ezt valósítja meg!
Metszet:
- A korábban említett Metszet tételben nem használtuk ki, hogy rendezett a sor.
- Az Összefuttatás tétel módosításával megoldható a feladat.
Pszeudokód:
Eljárás Metszet(X, M, Y, N, DB, Z)
i<-1; j<-1; DB<-0;
Ciklus amíg (i<=M) és (j<=N)
Elágazás
X[i]>Y[j] esetén
j<-j+1
X[i]<Y[j] esetén
i<-i+1
X[i] = Y[j] esetén
DB<-DB+1
Z[DB]<-X[i]
i<-i+1; j<-j+1;
Elágazás vége
Ciklus vége
Eljárás vége
Különbség:
Pszeudokód:
Eljárás Metszet(X, M, Y, N, DB, Z)
i<-1; j<-1; DB<-0;
Ciklus amíg (i<=M) és (j<=N)
Elágazás
X[i]>Y[j] esetén
j<-j+1
X[i]<Y[j] esetén
DB<-DB+1
Z[DB]<-X[i]
i<-i+1
X[i] = Y[j] esetén
i<-i+1; j<-j+1;
Elágazás vége
Ciklus vége
Ciklus amíg (i<=M)
DB<-DB+1; Z[DB]<-X[i]; i<-i+1;
Ciklus vége
Eljárás vége
Komplementer:
à = { x|x eleme U és x nem eleme A }, ahol U az univerzális halmaz. Ebből következik, hogy à = U \ A
Szimmetrikus differencia:
Pszeudokód:
Eljárás Metszet(X, M, Y, N, DB, Z)
i<-1; j<-1; DB<-0;
Ciklus amíg (i<=M) és (j<=N)
Elágazás
X[i]>Y[j] esetén
DB<-DB+1
Z[DB]<-Y[j]
j<-j+1
X[i]<Y[j] esetén
DB<-DB+1
Z[DB]<-X[i]
i<-i+1
X[i] = Y[j] esetén
i<-i+1; j<-j+1;
Elágazás vége
Ciklus vége
Ciklus amíg (i<=M)
DB<-DB+1; Z[DB]<-X[i]; i<-i+1;
Ciklus vége
Ciklus amíg (j<=N)
DB<-DB+1; Z[DB]<-Y[j]; j<-j+1;
Ciklus vége
Eljárás vége
Felhasznált Irodalom: Sergyán Szabolcs – Programozás I – 9. előadás diasor
Kommentek
Powered by Facebook Comments