|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectuoc.ei.tads.LlistaEncadenada<E>
public class LlistaEncadenada<E>
Seqüència posicional que es caracteritza per disposar d'operacions basades en la posició que ocupa un element dins del contenidor.
Posicio
,
Serialized FormNested Class Summary | |
---|---|
protected static class |
LlistaEncadenada.NodeEncadenat<E>
Classe que implementa un node amb un encadenament a node, que uneix un node amb el següent en una estructura de dades amb encadenament simple. |
protected static class |
LlistaEncadenada.RecorregutUnidireccionalLLista<E>
Classe que proporciona un recorregut de les posicions. |
Field Summary | |
---|---|
protected LlistaEncadenada.NodeEncadenat<E> |
darrer
Posició del darrer element de la llista. |
protected int |
n
Nombre d'elements que hi ha actualment al contenidor. |
Constructor Summary | |
---|---|
LlistaEncadenada()
Construeix una llista buida. |
Method Summary | |
---|---|
Posicio<E> |
afegirAbansDe(Posicio<E> node,
E elem)
Afegeix un element abans de la posició rebuda. |
Posicio<E> |
afegirAlFinal(E elem)
Afegeix un element al final de la llista. |
Posicio<E> |
afegirAlPrincipi(E elem)
Afegeix un element al principi de la llista. |
Posicio<E> |
afegirDespresDe(Posicio<E> node,
E elem)
Afegeix un element després de la posició rebuda. |
protected LlistaEncadenada.NodeEncadenat<E> |
anterior(LlistaEncadenada.NodeEncadenat<E> node)
Retorna el node anterior al rebut com a paràmetre. |
Iterador<E> |
elements()
Accessor de lectura dels elements que hi ha al contenidor. |
E |
esborrar(Posicio<E> node)
Esborra la posició rebuda. |
E |
esborrarPrimer()
Esborra la primera posició de la llista. |
E |
esborrarSeguent(Posicio<E> node)
Esborra la posició següent. |
boolean |
estaBuit()
Mètode per a comprovar si el contenidor està buit. |
void |
intercanviar(Posicio<E> node1,
Posicio<E> node2)
Intercanvia els elements continguts a les posicions rebudes. |
int |
nombreElems()
Accessor de lectura del nombre d'elements que hi ha al contenidor. |
protected LlistaEncadenada.NodeEncadenat<E> |
novaPosicio(LlistaEncadenada.NodeEncadenat<E> node,
E elem)
Crea un node encadenat, el situa a continuació del rebut com a paràmetre i incrementa el nombre d'elements. |
Recorregut<E> |
posicions()
Mètode que soporta múltiples recorreguts, de les posicions del contenidor, simultanis i independents entre ells. |
E |
reemplacar(Posicio<E> node,
E elem)
Reemplaça l'element contingut a la posició rebuda. |
java.lang.String |
toString()
Mètode que sobreescriu Object.toString(). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected int n
protected LlistaEncadenada.NodeEncadenat<E> darrer
Constructor Detail |
---|
public LlistaEncadenada()
Method Detail |
---|
public int nombreElems()
nombreElems
in interface Contenidor<E>
public boolean estaBuit()
estaBuit
in interface Contenidor<E>
public Posicio<E> afegirAlPrincipi(E elem)
afegirAlPrincipi
in interface Llista<E>
elem
- element que es vol afegir a la llista
public Posicio<E> afegirAlFinal(E elem)
afegirAlFinal
in interface Llista<E>
elem
- element que es vol afegir a la llista
public Posicio<E> afegirAbansDe(Posicio<E> node, E elem)
afegirAbansDe
in interface Llista<E>
elem
- element que es vol afegir a la llistanode
- posició de referència
ExcepcioPosicioInvalida
- si la posició és null o no
vàlidapublic Posicio<E> afegirDespresDe(Posicio<E> node, E elem)
afegirDespresDe
in interface Llista<E>
elem
- element que es vol afegir a la llistanode
- posició de referència
ExcepcioPosicioInvalida
- si la posició és null o no
vàlidapublic E esborrarPrimer()
esborrarPrimer
in interface Llista<E>
ExcepcioContenidorBuit
- si la llista està buidapublic E esborrar(Posicio<E> node)
esborrar
in interface Llista<E>
node
- posició que es vol eliminar
ExcepcioPosicioInvalida
- si la posició és null o no
vàlidapublic E esborrarSeguent(Posicio<E> node)
esborrarSeguent
in interface Llista<E>
node
- posició anterior a la que es vol eliminar; si és null
s'elimina la primera posició
ExcepcioPosicioInvalida
- si la posició és no vàlidapublic E reemplacar(Posicio<E> node, E elem)
reemplacar
in interface Llista<E>
elem
- nou elementnode
- posició de referència
ExcepcioPosicioInvalida
- si la posició és null o no
vàlidapublic void intercanviar(Posicio<E> node1, Posicio<E> node2)
intercanviar
in interface Llista<E>
node1
- primera de les dues posicions de referèncianode2
- segona de les dues posicions de referència
ExcepcioPosicioInvalida
- si alguna posició és null o no
vàlidaprotected LlistaEncadenada.NodeEncadenat<E> anterior(LlistaEncadenada.NodeEncadenat<E> node)
node
- posició de referència, no null
protected LlistaEncadenada.NodeEncadenat<E> novaPosicio(LlistaEncadenada.NodeEncadenat<E> node, E elem)
node
- posició anterior a la del nou node; pot ser nullelem
- element que es vol afegir a la llista
public Iterador<E> elements()
for ( Iterador it = tad.elements(); it.hiHaSeguent(); ) System.out.println(it.seguent());Enumerar és simplement enunciar l'una darrere l'altra (les coses d'una sèrie, les parts d'un tot). Però si el contenidor té definit algun tipus d'ordenació o de recorregut, l'enumeració ha de ser conseqüent i oferir els elements per ordre (FIFO, LIFO, inordre, etc.), sense alterar l'estat actual del contenidor. Si durant el recorregut s'altera l'estructura de posicions del contenidor, els resultats són imprevisibles.
elements
in interface Contenidor<E>
ExcepcioPosicioInvalida
- si es vol obtenir el següent
element de l'enumeració i no n'hi ha cap o no n'hi ha cap
mésIterador.hiHaSeguent()
,
Iterador.seguent()
public Recorregut<E> posicions()
posicions
in interface Llista<E>
public java.lang.String toString()
toString
in class java.lang.Object
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |