public bool MoveNext() { if (elsoElem == null) { elsoElem = elsoElottiElem; } else { elsoElem = elsoElem.Kovetkezo; } return(elsoElem != null); }
public void UjFelvetel(T ujElem) { ListaElem <T> uj = new ListaElem <T>(ujElem); ListaElem <T> aktualis; // Ha a lista üres if (fej == null) { fej = new ListaElem <T>(ujElem, null, null); farok = fej; Hossz++; } // A lista elejére kell beilleszteni az új elemet? else if (fej.Tartalom.Erdekesseg >= uj.Tartalom.Erdekesseg) { uj.Kovetkezo = fej; uj.Kovetkezo.Elozo = uj; fej = uj; Hossz++; } else { aktualis = fej; //Megkeresem azt az elemet, amely után beilleszthetem az új elemet. while (aktualis.Kovetkezo != null && aktualis.Kovetkezo.Tartalom.Erdekesseg < uj.Tartalom.Erdekesseg) { aktualis = aktualis.Kovetkezo; } //A megfelelő hivatkozások beállítása uj.Kovetkezo = aktualis.Kovetkezo; //Ha az új elem nem a lista végére került if (aktualis.Kovetkezo != null) { uj.Kovetkezo.Elozo = uj; } aktualis.Kovetkezo = uj; uj.Elozo = aktualis; Hossz++; } }
public void Torol(T elem) { ListaElem <T> torlendo = new ListaElem <T>(elem); ListaElem <T> aktualis = fej; while (aktualis != null && aktualis.Tartalom.Nev != torlendo.Tartalom.Nev) { aktualis = aktualis.Kovetkezo; } if (aktualis.Tartalom.Nev == torlendo.Tartalom.Nev) { aktualis.Elozo.Kovetkezo = aktualis.Kovetkezo; aktualis = null; } else { throw new Exception("A megadott név nem található a listában!"); } }
public Lista() { fej = farok = null; Hossz = 0; }
public void Reset() { elsoElem = null; }
public void Dispose() { elsoElem = null; elsoElottiElem = null; }
public ListaBejaro(ListaElem <T> elsoElem) { this.elsoElottiElem = elsoElem; this.elsoElem = null; }
public ListaElem(T tartalom, ListaElem <T> elozo, ListaElem <T> kovetkezo) { Tartalom = tartalom; Elozo = elozo; Kovetkezo = kovetkezo; }
public ListaElem(T tartalom) { Tartalom = tartalom; Elozo = null; Kovetkezo = null; }
public ListaElem() { Tartalom = default(T); Elozo = null; Kovetkezo = null; }