*Kitos reikšmės – grafas.*

|  |  |
| --- | --- |
|    | **Šiam straipsniui ar jo daliai trūksta išnašų į šaltinius.**Jūs galite padėti Vikipedijai pridėdami tinkamas išnašas su šaltiniais. |

*Duomenų struktūra „grafas" aprašyta straipsnyje grafas (duomenų struktūra)*
Matematikoje, tiksliau grafų teorijoje, **grafas** – abstrakti struktūra aprašantį rinkinį objektų, kuriame kai kurios poros susietos ryšiais. Objektus abstrakčiai aprašantys elementai vadinami *viršūnėmis* (angl. *vertex*, dgs. vertices), kartais – *mazgais* (angl. *node*) arba *taškais* (angl. *points*). Susietos poros vadinamos *briaunomis*, kartais – *ryšiais* (angl. *link*) arba *linijomis* (angl. *line*)*.* Plokštumoje grafo viršūnės dažnai vaizduojamos taškais ar kitais paprastomis geometrinėmis figūromis, o briaunos – kreivėmis arba atkarpomis, jungiančiomis tuos taškus. Briaunos gali būti neorientuotos arba orientuotos (pastaruoju atveju jos dažnai vaizduojamos rodyklėmis).

Neorientuoto grafo pavyzdžiu gali būti grupė žmonių, kurioje briauna sujungiame kiekvieną porą žmonių pažįstančių vienas kitą. Kadangi pažintis yra simetriškas sąryšis (žmogus A pažįsta žmogų B tada ir tik tada, kai žmogus B pažįsta žmogų A), šis grafas yra neorientuotas. Kita vertus, jei briaunomis laikytume sutvarkytas poras (A,B), kur žmogus A yra skolingas žmogui B, gautume orientuotą grafą, kadangi iš to, kad A skolingas žmogui B, neišplaukia, jog B skolingas žmogui A.

Grafas su viršūnėmis V = {1,2,3,4,5} ir briaunomis E = {{1,2}, {1,3}, {1,5}, {2,3}, {3,4}, {3,5}, {4,5}}

Grafų apibrėžimai
-----------------

Abstrakčiai grafas apibrėžiamas kaip pora {\displaystyle G=(V,E)}, kur {\displaystyle V} – kokia nors aibė, o {\displaystyle E} – aibės *{\displaystyle V}* elementų porų aibė. Aibės *{\displaystyle V}* elementai vadinami grafo *G* **viršūnėmis**, o aibės E elementai – **briaunomis**.

Dažnai naudinga briaunoms priskirti kryptis, t. y. briauną {\displaystyle \{u,v\}} pakeisti sutvarkyta pora {\displaystyle (u,v)}, kurią vadiname *lanku* (angl. *arc*). Šiuo atveju gauname struktūrą vadinamą **orientuotuoju grafu** arba **digrafu**.

Grafo sąvoką galima apibendrinti leidžiant kartotines briaunas. **Multigrafu vadinama pora {\displaystyle G=(V,E)}**, kur {\displaystyle E} yra *{\displaystyle V}* elementų porų *multiaibė*. Analogiškai {\displaystyle G=(V,A)} yra **multidigrafas**, jei *{\displaystyle A}* yra sutvarkytų porų iš *{\displaystyle V}* multiaibė.

Galiausiai, kai kada patogu leisti briaunas ar lankus kurie jungia viršūnę su pačia savimi. Formaliai, šiuo atveju leidžiama briaunas pavidalo {\displaystyle \{v,v\}} ir lankus pavidalo {\displaystyle (v,v)}. Tokias briaunas ir lankus vadiname **kilpomis**, o (di)grafus, kuriuose leidžiamos kilpos vadiname (di)grafais su kilpomis (angl. *looped (di)graph, (di)graph with loops*).

Terminai
--------

Dvi grafo viršūnės vadinamos **gretimomis** (angl. *adjacent*), kai jas jungia briauna. Turėdami briauną {\displaystyle \{u,v\}\in E} , sakome, kad viršūnės {\displaystyle u} ir {\displaystyle v} **incidenčios** (angl. *incident*) briaunai {\displaystyle \{u,v\}}.

(Multi)grafo viršūnės {\displaystyle v} **laipsnis** (angl. *degree*), žymimas {\displaystyle \deg \_{G}(v)}, yra briaunų, incidenčių viršūnei {\displaystyle v}, skaičius. Digrafe {\displaystyle G=(V,A)} **išėjimo laipsniu** (angl. *out-degree*) {\displaystyle \deg \_{G}^{+}(v)} vadinamas skaičius lankų vedančių iš {\displaystyle v} (t. y. {\displaystyle (v,u)\in A}); analogiškai **įėjimo laipsniu** (angl. *in-degree*) {\displaystyle \deg \_{G}^{-}(v)} vadinamas skaičius lankų vedančių į {\displaystyle v} (t. y. {\displaystyle (u,v)\in A}). Grafas vadinamas **reguliariuoju** (angl. *regular*), jei jo visų viršūnių laipsniai yra lygūs.

**Keliu** (angl. *walk*) (multi)grafe vadinama seka {\displaystyle v\_{0},e\_{1},v\_{1},\dots ,e\_{n},v\_{n}}, kurioje {\displaystyle v\_{0},\dots ,v\_{n}} yra viršūnės, o {\displaystyle e\_{1},\dots ,e\_{n}} yra briaunos, kur briauna {\displaystyle e\_{i}} jungia viršūnes {\displaystyle v\_{i-1}} ir {\displaystyle v\_{i}} (jei digrafe reikalaujame, kad {\displaystyle e\_{i}} yra lankas iš {\displaystyle v\_{i-1}} į {\displaystyle v\_{i}}, tokį kelią vadiname **orientuotuoju keliu**, angl. *oriented walk*). Jei grafe nėra kartotinių briaunų, kiekvieną kelią vienareikšmiškai apibrėžia viršūnių seka {\displaystyle v\_{0},\dots ,v\_{n}}. Kelias, kuriame nesikartoja briaunos, vadinamas **grandine** (angl. *trail*). Grandinė, kurioje nesikartoja viršūnės, vadinama **taku** (angl. *path*).

Grafas {\displaystyle G'=(V',E')} vadinamas grafo {\displaystyle G=(V,E)} **pografiu** (angl. *subgraph*), jei {\displaystyle V'\subseteq V} ir {\displaystyle E'\subseteq E}. Pografį {\displaystyle G'} vadiname **indukuotuoju**, (angl. *induced*) jei į {\displaystyle E'} įeina visos grafo {\displaystyle G=(V,E)} briaunos jungiančios aibės {\displaystyle V'} elementus. Kadangi kiekvieną indukuotą pografį vienareikšmiškai apibrėžia jo viršūnių aibė {\displaystyle V'}, todėl indukuotą pografis su viršūnių aibe {\displaystyle V'} žymime {\displaystyle G[V']}.

Neorientuotas grafas yra **jungus** (angl. *connected*), jei kiekvieną porą skirtingų viršūnių {\displaystyle u,v} jungia kelias (pastebėkime, kad grafas su viena viršūne taip pat yra jungus). Bet kurio grafo {\displaystyle G} viršūnių aibę galima vieninteliu būdu išskaidyti į netuščias aibes {\displaystyle V\_{1},\dots ,V\_{n}} taip, kad pografiai {\displaystyle G[V\_{1}],\dots ,G[V\_{n}]} būtų jungūs. Šie pografiai vadinami grafo {\displaystyle G} **jungiosiomis komponentėmis.**

Jei digrafe kiekvienai skirtingų viršūnių porai {\displaystyle u,v} egzistuoja orientuotas kelias iš {\displaystyle u} į {\displaystyle v}, toks digrafas vadinamas **stipriai** **jungiuoju** (angl. *strongly connected*).

Viršūnių aibė {\displaystyle U\subseteq V} vadinama **nepriklausoma** (angl. independent) arba **stabilia** (angl. stable), jei tarp viršūnių {\displaystyle U} nėra briaunų (t. y. {\displaystyle G[U]} briaunų skaičius lygus {\displaystyle 0}). Neorientuotasis grafas vadinamas **dvidaliu** (angl. *bipartite*), jei jo viršūnių aibę galima išskaidyti į dvi nepriklausomas aibes {\displaystyle V\_{1}}, {\displaystyle V\_{2}}. Bendriau, kiekvienam {\displaystyle k\geq 2} grafas vadinamas {\displaystyle k}-**daliu** (angl. {\displaystyle k}-*partite*), jei jei jo viršūnių aibę galima išskaidyti į nepriklausomas aibes {\displaystyle V\_{1},\dots ,V\_{k}}.

|  |  |
| --- | --- |
|  | **Vikiteka: Grafas (matematika)** – vaizdinė ir garsinė medžiaga  |