graaf
Class Graaf

java.lang.Object
  extended by graaf.Graaf
Direct Known Subclasses:
MinuGraaf, Puu

public class Graaf
extends Object

Graafiga tegelemine.

Version:
19.04.2009
Author:
Jüri Kiho

Field Summary
protected  Vector<Kaar> kaared
          Graafi kaarte koht.
protected  Vector<Tipp> tipud
          Graafi tippude koht.
 
Constructor Summary
Graaf()
           
 
Method Summary
 int aste(Tipp t)
          Tipu väljundaste.
 void eemaldada(Tipp t)
          Tipu eemaldamine.
static Graaf graaf(String s)
          Sõnest (tabelist) graafiks.
 int indeks(Kaar k)
          Kaare indeks.
 int indeks(Tipp t)
          Tipu indeks.
(package private) static int juhuarv(int a, int b)
          Juhutäisarv.
static Graaf juhugraaf(int n, int maxAste)
          Juhugraafi loomine.
 Kaar kaar(int i)
          Järjekordne kaar.
 Kaar kaar(Tipp t, Tipp u)
          Kaar kahe tipu vahel.
 Vector<Kaar> kaared()
          Piilumeetod.
 Graaf koopia()
          Koopia tegemine.
 Kaar lisada(Kaar k)
          Kaare lisamine.
 Tipp lisada(Tipp t)
          Tipu lisamine.
 int m()
          Kaarte arv.
 int n()
          Tippude arv.
 Vector<Tipp> naabrid(Tipp t)
          Tipu naabrid.
private static BufferedReader readerFrom(String s)
           
 int sisendaste(Tipp t)
          Tipu sisendaste.
 Vector<Kaar> sisenevad(Tipp t)
          Tippu sisenevad kaared.
static Graaf sisestadaTabelist(String failinimi)
          Selle graafi sisestamine failist.
 Tipp tipp(int i)
          Järjekordne tipp.
 Vector<Tipp> tipud()
          Piilumeetod.
 String toString()
          Selle graafi sõnekuju (tabel).
private static PrintWriter writerTo(String s)
           
 void väljastadaTabelina(String failinimi)
          Selle graafi väljastamine faili sõnekujul tabelina.
 Vector<Kaar> väljuvad(Tipp t)
          Tipust väljuvad kaared.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

tipud

protected Vector<Tipp> tipud
Graafi tippude koht.


kaared

protected Vector<Kaar> kaared
Graafi kaarte koht.

Constructor Detail

Graaf

public Graaf()
Method Detail

tipud

public Vector<Tipp> tipud()
Piilumeetod.


kaared

public Vector<Kaar> kaared()
Piilumeetod.


koopia

public Graaf koopia()
Koopia tegemine.

Returns:
Selle graafi koopia.

lisada

public Tipp lisada(Tipp t)
Tipu lisamine. Antud tipp lisatakse selle graafi tippude hulka.

Parameters:
t - lisatav tipp
Returns:
Lisatud tipp.

lisada

public Kaar lisada(Kaar k)
Kaare lisamine. Antud kaar lisatakse selle graafi kaarte hulka.

Parameters:
k - lisatav kaar
Returns:
Lisatud kaar.
Throws:
IllegalArgumentException - kui mõni kaare otstippudest ei kuulu selle graafi tippude hulka, siis

n

public int n()
Tippude arv.

Returns:
Selle graafi tippude arv.

m

public int m()
Kaarte arv.

Returns:
Selle graafi kaarte arv.

tipp

public Tipp tipp(int i)
Järjekordne tipp.

Parameters:
i - tipu indeks
Returns:
Selle graafi i-s tipp.
Throws:
IndexOutOfBoundsException - kui indeks vale

kaar

public Kaar kaar(int i)
Järjekordne kaar.

Parameters:
i - kaare indeks
Returns:
Selle graafi i-s kaar.
Throws:
IndexOutOfBoundsException - kui indeks vale

kaar

public Kaar kaar(Tipp t,
                 Tipp u)
Kaar kahe tipu vahel.

Parameters:
t - võimaliku kaare algustipp
u - võimaliku kaare lõpptipp
Returns:
Selle graafi kaar t-->u, või null (kui kaart pole).

indeks

public int indeks(Tipp t)
Tipu indeks.

Parameters:
t - antud tipp
Returns:
Tipu t järjekorranumber selle graafi tippude vektoris (või -1).

indeks

public int indeks(Kaar k)
Kaare indeks.

Parameters:
k - antud kaar
Returns:
Kaare t järjekorranumber selle graafi kaarte vektoris (või -1).

aste

public int aste(Tipp t)
Tipu väljundaste.

Parameters:
t - antud tipp
Returns:
Tipust t väljuvate kaarte arv.

sisendaste

public int sisendaste(Tipp t)
Tipu sisendaste.

Parameters:
t - antud tipp
Returns:
Tippu t sisenevate kaarte arv.

naabrid

public Vector<Tipp> naabrid(Tipp t)
Tipu naabrid.

Parameters:
t - antud tipp
Returns:
Tipu t naabertippudest moodustatud järjend (vektorina).

väljuvad

public Vector<Kaar> väljuvad(Tipp t)
Tipust väljuvad kaared.

Parameters:
t - antud tipp
Returns:
Tipust t väljuvatest kaartest moodustatud järjend (vektorina).

sisenevad

public Vector<Kaar> sisenevad(Tipp t)
Tippu sisenevad kaared.

Parameters:
t - antud tipp
Returns:
Tippu t sisenevatest kaartest moodustatud järjend (vektorina).

eemaldada

public void eemaldada(Tipp t)
Tipu eemaldamine. Eemaldatakse antud tipp koos külgnevate (temast väljuvate ja temasse sisenevate) kaartega.

Parameters:
t - antud tipp
Throws:
IllegalArgumentException - kui tipp t ei ole selles graafis.

juhugraaf

public static Graaf juhugraaf(int n,
                              int maxAste)
Juhugraafi loomine.

Parameters:
n - n > 1
maxAste - maxAste >= 0
Returns:
Silmusteta ja multikaarteta juhugraaf, milles tippuda arv <= n, tipu väljundaste <= maxAste ja puuduvad isoleeritud tipud (va juht maxAste == 0); tipumärgendid on hulgast {A, B, C, ...}; kaaremärgendid on hulgast {a, b, c, ...}.

graaf

public static Graaf graaf(String s)
Sõnest (tabelist) graafiks. "Anti-toString()". Eeldus: tipu nimi ei sisalda tühikuid.

Parameters:
s - toString() tulemus
Returns:
Antud sõnele vastav graaf.

toString

public String toString()
Selle graafi sõnekuju (tabel).

Overrides:
toString in class Object

väljastadaTabelina

public void väljastadaTabelina(String failinimi)
Selle graafi väljastamine faili sõnekujul tabelina.

Parameters:
failinimi - faili täisnimi või lihtnimi

sisestadaTabelist

public static Graaf sisestadaTabelist(String failinimi)
Selle graafi sisestamine failist. Graaf failis paikneb sõnekujul tabelina.

Parameters:
failinimi - faili täisnimi või lihtnimi
Returns:
Failist sisestatud sõnekujul tabelile vastav graaf.

juhuarv

static int juhuarv(int a,
                   int b)
Juhutäisarv.

Parameters:
a - a>=0
b - b>=0
Returns:
Juhuarv poollõigult [a; b) (kui a > b, siis poollõigult [b; a)).

readerFrom

private static BufferedReader readerFrom(String s)
                                  throws FileNotFoundException
Throws:
FileNotFoundException

writerTo

private static PrintWriter writerTo(String s)
                             throws IOException
Throws:
IOException