Kisebb dimenziós komponensek

A kisebb dimenziós komponenseknek a következő részben lesz komoly szerepük, ugyanis ők fogják eldönteni a szimplexek egy-egy csúcsának jellegét (valódi, ideális vagy végtelennél távolabbi.) Most egyelőre csak azt nézzük meg, hogy egy-egy operációt elhagyva hány komponensre esik szét a diagram.

Algoritmus 3.5   Az algoritmus bemenete egy operáció-sorszáma, kimenete pedig az operáció elhagyásával keletkezett komponensek száma:
  1. Vesszük az első csúcsot, amit még nem vizsgáltunk, és betesszük a vizsgálandók közé. (Ami eddig üres volt.)
  2. Ha a vizsgálandók halmaza nem üres, vesszük az összes szomszédsági operáció (kivéve a bemenet) szerinti szomszédaikat, és ez lesz az új vizsgálandók halmaza. Ezt a lépést ismételjük, amíg nem üres a vizsgálandók halmaza.
  3. Növeljük eggyel a komponensek számát (ami kezdetben 0.)
  4. Ha van még csúcs, amit nem vizsgáltunk, akkor kezdjük elölről az algoritmust, különben megállunk.
Látszik, hogy ha egy nem létező operációt adunk bemenetként, akkor a kimenet 1 értéke jelenti, hogy a diagram összefüggő.

Az algoritmus enyhe módosításával érdemes tárolni is a kisebb dimenziós komponenseket (a vizsgálandók halmazát kell mindig hozzáfűzni a komponens listájához, és új komponens listát kezdeni, ha a végére értünk és kezdenénk elölről.)

Boroczki Lajos 2007-05-29