idats_2009_semestralka_a_MatejTrakal
Class AbstrDoubleList<objType>

java.lang.Object
  extended by idats_2009_semestralka_a_MatejTrakal.AbstrDoubleList<objType>
Type Parameters:
objType - vstupní datový typ (struktura, která bude ukládána)
All Implemented Interfaces:
IAbstrDoubleList<objType>, java.io.Serializable

public abstract class AbstrDoubleList<objType>
extends java.lang.Object
implements IAbstrDoubleList<objType>, java.io.Serializable

Abstraktní datová struktura cyklicky zřetězený seznam bez hlavy

See Also:
Serialized Form

Constructor Summary
AbstrDoubleList()
          bezparametrický konstruktor, který nastaví všechny proměnné na null
 
Method Summary
 void dalsiPrvek()
          Posune ukazatel na aktuální na další prvek (pohyb seznamem)
 objType getDataActual()
          Vrátí datovou část aktuálního prvku
 objType getDataBegin()
          Vrátí datovou část prvního prvku
 objType getDataEnd()
          Vrátí datovou část posledního prvku
 boolean jePrazdny()
          Zjistí zda-li je ADL prázdný
 objType odeberAktualni()
          Odebrání (vyjmutí) aktuálního prvku ze seznamu aktuální prvek je nastaven na první prvek Do lokální proměnné načte aktuální prvek, zkontroluje na jaké pozici se tento prvek v ADL nachází a podle toho se zachová při odebírání prvku.
 objType odeberNaslednika()
          Odebrání následníka aktuálního prvku ze seznamu Zkontroluje pozici v seznamu a podle toho zavolá případnou metodu, pokud se nachází někde uprostřed, přesměruje ukazatele, aby prvek přeskočily.
 objType odeberPosledni()
          Odebrání posledního prvku ze seznamu Zkontroluje zda-li není absolutně posledním prvkem v seznamu (zavolá příslušnout funkci) a následně odebere poslední prvek v seznamu (přenastaví ukazatele na propojení ADL bez tohoto prvku)
 objType odeberPredchudce()
          Odebrání předchůdce aktuálního prvku ze seznamu Zkontroluje pozici v seznamu a podle toho zavolá případnou metodu, pokud se nachází někde uprostřed, přesměruje ukazatele, aby prvek přeskočily.
 objType odeberPrvni()
          Odebrání prvního prvku ze seznamu Zkontroluje zda-li není absolutně posledním prvkem v seznamu (zavolá příslušnout funkci) a následně odebere první prvek v seznamu (přenastaví ukazatele na propojení ADL bez tohoto prvku)
 void posledniPrvek()
          Nastaví poslední prvek na aktuální (pohyb seznamem)
 void predchoziPrvek()
          Posune ukazatel na aktuální na předchozí prvek (pohyb seznamem)
 void prvniPrvek()
          Nastaví první prvek na aktuální (pohyb seznamem)
 void vlozNaslednika(objType obj)
          Vložení prvku do seznamu jakožto následníka aktuálního prvku Pokud ještě ADL neobsahuje prvek, vloží první, jinak následníka aktuálního prvku a přenastaví potřebné ukazatele.
 void vlozPosledni(objType obj)
          Vložení prvku do seznamu na poslední místo Pokud ještě ADL neobsahuje prvek, vloží první, jinak vloží na poslední pozici nový prvek a přenastaví potřebné ukazatele.
 void vlozPredchudce(objType obj)
          Vložení prvku do seznamu jakožto předchůdce aktuálního prvku Pokud ještě ADL neobsahuje prvek, vloží první, jinak předchůdce aktuálního prvku a přenastaví potřebné ukazatele.
 void vlozPrvni(objType obj)
          Vložení prvku do seznamu na první místo Pokud ještě ADL neobsahuje prvek, vloží první, jinak vloží na první pozici nový prvek a přenastaví potřebné ukazatele.
 IIterator<objType> vytvorIterator()
          Vytvoří iterátor pro ADL
 objType zpristupniAktualni()
          Zpřístupnění aktuálního prvku seznamu Pokud ADL zatím neojsahuje prvek, vrátí null, jinak aktuální prvek ADL
 objType zpristupniNaslednika()
          Zpřístupnění následníka aktuálního prvku Pokud ADL zatím neojsahuje prvek, vrátí null, jinak následující prvek za aktuálním prvek v ADL
 objType zpristupniPosledni()
          Zpřístupnění posledního prvku seznamu Pokud ADL zatím neojsahuje prvek, vrátí null, jinak poslední prvek ADL
 objType zpristupniPredchudce()
          Zpřístupnění předchůdce aktuálního prvku Pokud ADL zatím neojsahuje prvek, vrátí null, jinak předchozí prvek před aktuálním prvkem v ADL
 objType zpristupniPrvni()
          Zpřístupnění prvního prvku seznamu Pokud ADL zatím neojsahuje prvek, vrátí null, jinak první prvek ADL
 void Zrus()
          Zrušení celého seznamu Postupně prochází celý seznam a ruší jednotlivé prvky, následně zruší i aktuální, začátek a konce seznamu, čímž způsobí, že Garbage collector dealokuje celou ADL
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstrDoubleList

public AbstrDoubleList()
bezparametrický konstruktor, který nastaví všechny proměnné na null

Method Detail

jePrazdny

public boolean jePrazdny()
Zjistí zda-li je ADL prázdný

Specified by:
jePrazdny in interface IAbstrDoubleList<objType>
Returns:
true = je prázdný, false = není prázdný

Zrus

public void Zrus()
Zrušení celého seznamu Postupně prochází celý seznam a ruší jednotlivé prvky, následně zruší i aktuální, začátek a konce seznamu, čímž způsobí, že Garbage collector dealokuje celou ADL

Specified by:
Zrus in interface IAbstrDoubleList<objType>

vlozPrvni

public void vlozPrvni(objType obj)
Vložení prvku do seznamu na první místo Pokud ještě ADL neobsahuje prvek, vloží první, jinak vloží na první pozici nový prvek a přenastaví potřebné ukazatele.

Specified by:
vlozPrvni in interface IAbstrDoubleList<objType>
Parameters:
obj - datová struktura vkládaných prvků

vlozPosledni

public void vlozPosledni(objType obj)
Vložení prvku do seznamu na poslední místo Pokud ještě ADL neobsahuje prvek, vloží první, jinak vloží na poslední pozici nový prvek a přenastaví potřebné ukazatele.

Specified by:
vlozPosledni in interface IAbstrDoubleList<objType>
Parameters:
obj - datová struktura vkládaných prvků

vlozNaslednika

public void vlozNaslednika(objType obj)
Vložení prvku do seznamu jakožto následníka aktuálního prvku Pokud ještě ADL neobsahuje prvek, vloží první, jinak následníka aktuálního prvku a přenastaví potřebné ukazatele. Pokud by byl vkládaný prvek poslední, nastaví nové ukazatele na tento nový poslední prvek.

Specified by:
vlozNaslednika in interface IAbstrDoubleList<objType>
Parameters:
obj - datová struktura vkládaných prvků

vlozPredchudce

public void vlozPredchudce(objType obj)
Vložení prvku do seznamu jakožto předchůdce aktuálního prvku Pokud ještě ADL neobsahuje prvek, vloží první, jinak předchůdce aktuálního prvku a přenastaví potřebné ukazatele. Pokud by byl vkládaný prvek první, nastaví nové ukazatele na tento nový první prvek.

Specified by:
vlozPredchudce in interface IAbstrDoubleList<objType>
Parameters:
obj - datová struktura vkládaných prvků

zpristupniAktualni

public objType zpristupniAktualni()
Zpřístupnění aktuálního prvku seznamu Pokud ADL zatím neojsahuje prvek, vrátí null, jinak aktuální prvek ADL

Specified by:
zpristupniAktualni in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

zpristupniPrvni

public objType zpristupniPrvni()
Zpřístupnění prvního prvku seznamu Pokud ADL zatím neojsahuje prvek, vrátí null, jinak první prvek ADL

Specified by:
zpristupniPrvni in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

zpristupniPosledni

public objType zpristupniPosledni()
Zpřístupnění posledního prvku seznamu Pokud ADL zatím neojsahuje prvek, vrátí null, jinak poslední prvek ADL

Specified by:
zpristupniPosledni in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

zpristupniNaslednika

public objType zpristupniNaslednika()
Zpřístupnění následníka aktuálního prvku Pokud ADL zatím neojsahuje prvek, vrátí null, jinak následující prvek za aktuálním prvek v ADL

Specified by:
zpristupniNaslednika in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

zpristupniPredchudce

public objType zpristupniPredchudce()
Zpřístupnění předchůdce aktuálního prvku Pokud ADL zatím neojsahuje prvek, vrátí null, jinak předchozí prvek před aktuálním prvkem v ADL

Specified by:
zpristupniPredchudce in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

odeberAktualni

public objType odeberAktualni()
Odebrání (vyjmutí) aktuálního prvku ze seznamu aktuální prvek je nastaven na první prvek Do lokální proměnné načte aktuální prvek, zkontroluje na jaké pozici se tento prvek v ADL nachází a podle toho se zachová při odebírání prvku. Pokud se nachází někde mezi prvním a posledním prvkem, přenastaví se ukazatele, jinak se zavolají jiné pšíslušné metody.

Specified by:
odeberAktualni in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

odeberPrvni

public objType odeberPrvni()
Odebrání prvního prvku ze seznamu Zkontroluje zda-li není absolutně posledním prvkem v seznamu (zavolá příslušnout funkci) a následně odebere první prvek v seznamu (přenastaví ukazatele na propojení ADL bez tohoto prvku)

Specified by:
odeberPrvni in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

odeberPosledni

public objType odeberPosledni()
Odebrání posledního prvku ze seznamu Zkontroluje zda-li není absolutně posledním prvkem v seznamu (zavolá příslušnout funkci) a následně odebere poslední prvek v seznamu (přenastaví ukazatele na propojení ADL bez tohoto prvku)

Specified by:
odeberPosledni in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku, nebo null

odeberNaslednika

public objType odeberNaslednika()
Odebrání následníka aktuálního prvku ze seznamu Zkontroluje pozici v seznamu a podle toho zavolá případnou metodu, pokud se nachází někde uprostřed, přesměruje ukazatele, aby prvek přeskočily.

Specified by:
odeberNaslednika in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku

odeberPredchudce

public objType odeberPredchudce()
Odebrání předchůdce aktuálního prvku ze seznamu Zkontroluje pozici v seznamu a podle toho zavolá případnou metodu, pokud se nachází někde uprostřed, přesměruje ukazatele, aby prvek přeskočily.

Specified by:
odeberPredchudce in interface IAbstrDoubleList<objType>
Returns:
datová struktura vnitřního prvku

posledniPrvek

public void posledniPrvek()
Nastaví poslední prvek na aktuální (pohyb seznamem)


prvniPrvek

public void prvniPrvek()
Nastaví první prvek na aktuální (pohyb seznamem)


dalsiPrvek

public void dalsiPrvek()
Posune ukazatel na aktuální na další prvek (pohyb seznamem)


predchoziPrvek

public void predchoziPrvek()
Posune ukazatel na aktuální na předchozí prvek (pohyb seznamem)


vytvorIterator

public IIterator<objType> vytvorIterator()
Vytvoří iterátor pro ADL

Specified by:
vytvorIterator in interface IAbstrDoubleList<objType>
Returns:
ukazatel na vytvořený Iterátor

getDataActual

public objType getDataActual()
Vrátí datovou část aktuálního prvku

Returns:
datová struktura vnitřního prvku

getDataBegin

public objType getDataBegin()
Vrátí datovou část prvního prvku

Returns:
datová struktura vnitřního prvku

getDataEnd

public objType getDataEnd()
Vrátí datovou část posledního prvku

Returns:
datová struktura vnitřního prvku