Kayıt Ol

Giriş

Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Giriş

Kayıt Ol

C Programlama Dili Tek Yönlü Bağlı Liste Arama Yapma

Veri Yapıları Tek Yönlü Bağlı Liste Arama Yapma C Kodu

Bu konumuzda tek yönlü bağlı liste arama yapma işlemini yapan c kodunu anlatacağız. Bunun öncesinde elimizde daha önceki konularda kullandığımız ekleme kodunu kullanacağız. Buradan ekleme koduna ulaşabilirsiniz.

Daha sonrasında yukarıdaki linkte bulunan ekleme koduna aşağıda verilen arama kodunu eklediğiniz takdirde arama işlemini yapmış olacaksınız.

  • Elimizde void olan yani herhangi bir değer döndürmeyen bir arama adlı fonksiyonumuz var. Bu fonksiyon kullanıcıdan aranan adında integer türünde bir değişken alıyor.
  • 2. satırda kontrol adında bir değişken tanımladık ve bu değişkene başlangıç değeri olarak 0(sıfır) değerini atadık. Bu değişken değerinin değişimine göre program bize bir ekran çıktısı verecektir.
  • Daha sonra bu konuyla bağlantılı olan konularda olduğu gibi ( eklemesilmelisteleme ) “gecici” değişkenine “ilk” değişkenindeki değer atanır.
  • gecici düğümünün içinde eleman olup olmadığına bakılır. Eğer eleman yoksa “kontrol” değişkeninin değeri -1 olarak değiştirilir.
  • Eğer eleman varsa while döngüsünde bağlı listemizin sonuna kadar bakılır.
  • Her düğümde kullanıcıdan alınan “aranan” değişkeni ile üzerinde bulunduğumuz “gecici” değişkeninin değeri ( gecici->sayi ) karşılaştırılır.
  • Eğer “aranan” ile “gecici->sayi” değeri eşit ise “kontrol” değişkeninin değeri 1 olarak değiştirilir.
  • Eşitlik yoksa gecici = gecici->sonraki ataması yapılarak döngüye devam edilir.
  •  while döngüsü bittikten sonra “kontrol” değişkenine bakılır.
  • Eğer “kontrol” -1 ise listede eleman yok demektir. Ekran çıktısı olarak “Listede eleman yoktur”  yazısı gelir.
  • Eğer ki “kontrol” 1 ise aranan sayı bulunmuştur ve ekran çıktısı olarak “%d ( aranan sayı ) sayısı bulunmustur” yazısı gelir.
  • Son olarak eğer “kontrol” değeri değişmemiş ise, yani 0(sıfır) ise ekrana “Aranan sayi bulunamamıstır.” yazısı gelecektir.

Ve böylelikle liste içerinde aradığımız elemanı bulmuş olduk. İleri ki konularda ekleme, silme, listeleme ve arama fonksiyonlarının tümünün bulunduğu konuyu bulabilirsiniz.

 

Hakkında Eyüp Arslan

Leave a reply