Bir önceki yazımızda Linked List Sondan Eleman Silme işlemini görmüştük. Bu yazımızda ise baştan eleman silme işleminin nasıl yapıldığını göreceğiz. Aşağıdaki tek yönlü bağlı liste yapımıza göz atalım.
7 => 19 => 37 => 47 => 98
Baştan eleman sildikten sonra yapımız şu hale gelecek;
19 => 37 => 47 => 98
fark ettiyseniz 19 birinci eleman yani start elemanı oldu. Şimdi baştan eleman silme fonksiyonunu sizinle paylaşıp satır satır anlatayım.
Bağlı Liste Baştan Eleman Silme C Kodu
void bastanSil()
{
struct node* birinciolacak = (struct node*)malloc(sizeof(struct node));
birinciolacak = start->next;
free(start);
start = birinciolacak;
}
Fonksiyona herhangi bir parametre göndermemize gerek yok. Çalıştırdığımızda baştaki elemanı silecek.
birinciolacak diye bir düğüm oluşturdum. Bu düğüm aslında 2. sıradaki düğüm için oluşturulan bir değer.
birinciolacak = start->next; ifadesiyle 2. sıradaki sayıyı elimizde tutuyoruz. Çünkü silme işleminden sonra bu sayımız 1. sayı olacak.
free(start) ifadesiyle start düğümünün hafızada kapladığı alanı yok ediyoruz. (dilerseniz Malloc C Nedir makalemize bakabilirsiniz.)
start = birinciolacak; satırıyla da ikinci sıradaki düğümü start değeri haline getiriyoruz.
işlem bu kadar.
Bundan sonraki makalemizde Bağlı Liste Aradan Eleman Silme C Kodu işlemine bakacağız.Etiketler: bağlı liste baştan eleman silme, bağlı liste eleman silme, linked list baştan eleman silme, linked list eleman silme