Sok tömb azonos indexein lévő egyező értékkel rendelkező elemeinek megtalálása miként lehetséges a legegyszerűbb módon? (bővebben lent)
Tehát tegyük fel, hogy van sok azonos hosszúságú tömb: tomb1,tomb2,tomb3... egészen mondjuk harmincig, ezek száz elemet tartalmaznak.
A tömbök nem rendezettek, véletlenszerűen tartalmazzák a számokat.
Ha azt szeretnénk megtudni, hogy azonos index-en nincs-e azonos érték két vagy több tömb esetén, mit kell tenni, hogy a legegyszerűbb ezt leprogramozni hogy az algoritmus vissza is adja konkrétan?
For ciklussal végigmenni és a ciklus belsejébe beírni hogy:
if (tomb1[i]=tomb2[i]) or(tomb3[i]=tomb4[i])...
Tehát így végig ahány tömb van, szerintem fárasztó és nem jó megoldás.
Két ciklussal csinálni, amely végigmegy, veszi az első tömböt, összehasonlítja a másodikkal és miután végigér, veszi a másodikat és azt hasonlítja össze elejétől a végéig, ez sem biztos hogy jó megoldás mert a tömb önmagára is eshet ekkor az összehasonlítás és ez ugye mindig igaz lesz...
Másrészt ezt lépésenként be kell írni ami rendkívül fárasztó.
Hogy hívják ezt amit szeretnék csinálni és mi a legjobb módszer rá?
if (tomb1[i]=tomb2[i]) or(tomb3[i]=tomb4[i])...
Ez nem azt hozza ki, amire vársz, mert ha a tomb4[5] = tomb1[5] igaz, akkor alertelni kéne, de ez az if nem csinál semmit.
Minden tömbön menj végig, és egyesével pakolgasd fel az indexeket egy egyesítőarraybe.
Pl. bigArray = [tomb1[1], tomb2[1], tomb3[1], tomb1[2], tomb2[2], tomb3[2], tomb1[3], tomb2[3], tomb3[3], ...];
Ez két for looppal egyszerűen megoldható. Ha a tombok neve egy arrayban van már sorrendben, vagy úgy épülnek fel, hogy "tomb"+int[serial].
Utána az arrayok számaként felbonto a nagyarrayt kisarrayekre, ha nem true, hogy unique_array, akkor alertelsz, vagy amit akarsz. Ha nem érted, írd meg privátban, meg esetleg a nyelvet, amin akarod.
"Két ciklussal csinálni, amely végigmegy, veszi az első tömböt, összehasonlítja a másodikkal és miután végigér, veszi a másodikat és azt hasonlítja össze elejétől a végéig, ez sem biztos hogy jó megoldás mert a tömb önmagára is eshet ekkor az összehasonlítás és ez ugye mindig igaz lesz"
Most akkor mit akarsz, teljes tömböket összehasonlítani vagy csak tömbök i-edik elemét?
"Akkor igazából elég összehasonlítani az első tömb i.-ik elemét a többi tömb i.-ik elemével, több összehasonlítás nem szükséges mivel az egyenlőség tranzitív reláció."
Ez akkor lenne igaz, ha az volna a felvétel, hogy az ÖSSZES i. elem ugyanaz. A feltétel a volt, hogy bármely két i. elem ugyanaz.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!