Jak Začít?

Máš v počítači zápisky z přednášek
nebo jiné materiály ze školy?

Nahraj je na studentino.cz a získej
4 Kč za každý materiál
a 50 Kč za registraci!




03_seznamy_realizace

PDF
Stáhnout kompletní materiál zdarma (43.42 kB)

Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.

Přidání prvku na začátek  

 
Vstup – seznam, vkládaný Prvek 

Pokud je seznam prázdný 

   Head = Prvek 

   Tail = Prvek 

   SetNext(Prvek, NULL)  - mělo by být, ale pro jistotu 

   SetPrev(Prvek, NULL)  - mělo by být, ale pro jistotu 

jinak 

   pom = Head // pro propojeni 

   SetNext(Prvek,Head)   // bývalý první prvek bude druhý 

   Head = Prvek 

   SetPrev(pom, Prvek) 

Odebrání prvku ze začátku  

Vstup – seznam 

Pokud je seznam prázdný 

   oznam chybu (hodně implementací neřeší, nutno odebírat po  

kontrole prázdnosti Empty)  

jinak 

   pom = Head 

   Head = Next(Head) 

   SetPrev(Head, NULL); 

   SetNext(pom, NULL) // kvuli bezpeci pri vrácení;  

některé algoritmy vyžadují pro zrušení 

SetPrev(  

   zruš pom/ vrať pom – podle konkrétní definice (existují obě  

verze) 

Přidání prvku na danou pozici  

-  varianta PřidejZa – nastavíme na daný prvek a potom pouze přidáme, parametrem může být 

index nebo přímo prvek/hodnota, který se má najít 

-  Rozdělení je možné i u ostatních algoritmů 
-  u obousměrného seznamu je možné i PřidejPřed 

vstup: seznam, prvek, index 

pokud je seznam prázdný nebo je index mimo počet prvků seznamu 

   ... 

jinak 

   Pom = Head 

   Dokud Pom neni prvek za který chceme vkládat 

Pom = Next(Pom) 

   SetNext(Prvek,Next(Pom)) 

   SetNext(Pom,Prvek) 

   SetPrev(  

SetPrev(  

Odebrání prvku z dané pozice pozici 

vstup: seznam, index 

pokud je seznam prázdný nebo je index mimo počet prvků seznamu 

   ... 

Témata, do kterých materiál patří