Lekce 6 - Implementace spojového seznamu v C - insert, get, remove
V minulé lekci, Implementace spojového seznamu v C - Struktury a alokace, jsme si uvedli spojový seznam, připravili si několik datových struktur a funkci na alokaci paměti.
Dnes implementujeme základní 3 funkce spojového seznamu pro přidání, nalezení a odstranění položky.
insert_to_list()
Funkce insert_to_list()
přidá novou položku na konec seznamu.
Má tři parametry:
- První je ukazatel na seznam, do kterého budeme přidávat položku se jménem
- Druhý parametr je toto jméno položky
- A třetím je telefonní číslo
Kód funkce je následující:
struct CONTACT* insert_to_list( struct LIST* list, const char* name, const char* telephone_number) { long length = 0L; struct ITEM* new_item = (struct ITEM*)malloc(sizeof(struct ITEM)); if (new_item == NULL) return NULL; // vytvorime strukturu CONTACT struct CONTACT* new_contact = (struct CONTACT*)malloc(sizeof(struct CONTACT)); if (new_contact == NULL) return NULL; // toto bude fungovat, ale v podstatě to neni spravne new_contact->name = ( char*)name; new_contact->telephone_number = (char *)telephone_number; if (list->last == NULL) { // seznam je prazdny new_item->next = NULL; // nema nasledovnika new_item->previos = NULL; // nema predchudce list->first = new_item; // prvni v listu je tento kontakt list->last = new_item; // posledni v listu je tento kontakt } else { // seznam ma aspon jednoho clena, neni prazdny, pridame na konec new_item->next = NULL; // nova polozka nema nasledovnika new_item->previos = list->last; // nova polozka ma predchudce new_item->previos->next = new_item; list->last = new_item; // nova polozka je posledni v seznamu } new_item->contact = new_contact; return new_contact; }
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V tutoriálu programování v C implementujeme základní 3 funkce spojového seznamu pro přidání, nalezení a odstranění položky.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.