Listy

Listy są to takie kontenery w którym elementy oprócz swoich danych zawierają wskaźnik na następnika i/lub poprzednika. Wyróżniamy kilka rodzai list:
- listy jednokierunkowe - charakteryzują się tym że zawierają tylko wskaźnik na następny element w listy
- listy dwukierunkowe - charakteryzują się tym że zawierają wskaźnik na następny element i poprzedni listy
- listy cykliczne - ogólnie taka sama jak lista dwukierunkowa z tą różnicą że pierwszy i ostatni element jest ze sobą połączony
- listy z wartownikiem charakteryzuje się tym że jeden z elementów listy jest tzw wartownikiem niewidocznym dla programisty, jego zastosowanie znacznie upraszcza zaimplementowanie listy

Przykładowa implementacja listy jednokierunkowej w języku C:

struct Lista{ Lista *nastepny; /* jakieś dane */ }; List *pierwszy_element = NULL; void dodaj_element(Lista *lista) { lista->nastepny = pierwszy_element; pierwszy_element = lista; } void usun_element(Lista *lista) { Lista *tmp=pierwszy_element; Lista *tmp2=NULL; while(tmp != NULL) { if(tmp == lista) { if(tmp2==NULL) { pierwszy_element = tmp->nastepny; }else { tmp2 = tmp->nastepny; } break; } tmp2=tmp; tmp = tmp->nastepny; } }
 

rapidshare premium - Schody - Darmowy katalog stron - nfs pro street - Tkaniny i dzianiny - końcówki serii - Nauka pozycjonowania - nawigacja tom tom - Bilety