Sobes.tech
Middle — Senior

Hogyan ellenőrizhetjük hatékonyan, hogy létezik-e tükörpár pont az ellenkező x értékkel?

sobes.tech MI

Válasz az MI-től

Az x értékek ellentétes értékű párjainak hatékony ellenőrzéséhez gyors kereséshez adatstruktúrát lehet használni — például egy halmazt (set).

Algoritmus:

  1. Tegye az összes pontot egy halmazba, hogy O(1) keresést tegyen lehetővé.
  2. Minden pont (x, y) esetén ellenőrizze, hogy a halmazban van-e (-x, y) pont.

Ha ilyen pontot talál, az azt jelenti, hogy létezik egy tükörpár az Y tengely mentén.

Python példával:

points = [(1, 2), (-1, 2), (3, 4), (5, 6)]
point_set = set(points)

for x, y in points:
    if (-x, y) in point_set:
        print(f"Tükörpár találva: ({x}, {y}) és ({-x}, {y})")

Ez a módszer O(n) időben működik, ahol n a pontok száma, és nagy adathalmazok esetén hatékony.