logo

Veri Yapıları Eğitimi

DS Eğitimi

Veri Yapıları (DS) eğitimi, Veri Yapısının temel ve gelişmiş kavramlarını sağlar. Veri Yapısı eğitimimiz yeni başlayanlar ve profesyoneller için tasarlanmıştır.

Veri Yapısı, verileri verimli bir şekilde kullanılabilecek şekilde depolamanın ve düzenlemenin bir yoludur.

Veri Yapısı eğitimimiz Dizi, İşaretçi, Yapı, Bağlantılı Liste, Yığın, Kuyruk, Grafik, Arama, Sıralama, Programlar vb. gibi Veri Yapısının tüm konularını içerir.

Veri Yapısı Nedir?

Veri yapısı adı, verinin bellekte düzenlendiğini belirtir. Veri yapılarından birini, yani C dilinde diziyi daha önce gördüğümüz için, bellekteki verileri düzenlemenin birçok yolu vardır. Dizi, verilerin sırayla, yani birbiri ardına depolandığı bir bellek öğeleri koleksiyonudur. Yani dizinin elemanlarını sürekli bir şekilde sakladığını söyleyebiliriz. Verilerin bu organizasyonu bir dizi veri yapısının yardımıyla yapılır. Bellekteki verileri düzenlemenin başka yolları da vardır. Farklı veri yapı türlerini görelim.

Veri yapısı C, C++, java vb. herhangi bir programlama dili değildir. Bellekteki verileri yapılandırmak için herhangi bir programlama dilinde kullanabileceğimiz bir dizi algoritmadır.

Bellekteki veriyi yapılandırmak için 'n' sayıda algoritma önerilmiştir ve bu algoritmaların tümü Soyut veri türleri olarak bilinmektedir. Bu soyut veri türleri kurallar dizisidir.

Veri Yapıları Eğitimi

Veri Yapısı Türleri

İki tür veri yapısı vardır:

aktör Ranbir Kapoor'un yaşı
  • İlkel veri yapısı
  • İlkel olmayan veri yapısı

İlkel Veri yapısı

İlkel veri yapıları ilkel veri türleridir. int, char, float, double ve pointer tek bir değer tutabilen ilkel veri yapılarıdır.

İlkel Olmayan Veri yapısı

İlkel olmayan veri yapısı iki türe ayrılır:

  • Doğrusal veri yapısı
  • Doğrusal olmayan veri yapısı

Doğrusal Veri Yapısı

Verilerin sıralı bir şekilde düzenlenmesi doğrusal veri yapısı olarak bilinir. Bu amaçla kullanılan veri yapıları Diziler, Bağlantılı liste, Yığınlar ve Kuyruklardır. Bu veri yapılarında bir öğe yalnızca bir başka öğeye doğrusal biçimde bağlanır.

Bir öğe 'n' sayıda öğeye bağlandığında doğrusal olmayan bir veri yapısı olarak bilinir. En iyi örnek ağaçlar ve grafiklerdir. Bu durumda elemanlar rastgele bir şekilde düzenlenir.

Yukarıdaki veri yapılarını önümüzdeki konularda kısaca ele alacağız. Şimdi bu veri yapıları üzerinde yapabileceğimiz ortak işlemleri göreceğiz.

Veri yapıları ayrıca şu şekilde de sınıflandırılabilir:

    Statik veri yapısı:Derleme zamanında boyutun tahsis edildiği bir veri yapısı türüdür. Bu nedenle maksimum boyut sabittir.Dinamik veri yapısı:Çalışma zamanında boyutun tahsis edildiği bir veri yapısı türüdür. Bu nedenle maksimum boyut esnektir.

Büyük Operasyonlar

Veri yapılarında gerçekleştirilebilecek başlıca veya ortak işlemler şunlardır:

Linux'ta Java sürümünü kontrol edin
    Aranıyor:Bir veri yapısındaki herhangi bir öğeyi arayabiliriz.Sıralama:Bir veri yapısının öğelerini artan veya azalan düzende sıralayabiliriz.Ekleme:Yeni öğeyi bir veri yapısına da ekleyebiliriz.Güncelleme:Ayrıca öğeyi güncelleyebiliriz, yani öğeyi başka bir öğeyle değiştirebiliriz.Silme:Elemanı veri yapısından kaldırmak için silme işlemini de gerçekleştirebiliriz.

Hangi Veri Yapısı?

Veri yapısı, verileri verimli bir şekilde kullanılabilecek şekilde düzenlemenin bir yoludur. Burada kelimeyi hem yer hem de zaman açısından verimli bir şekilde kullandık. Örneğin, bir yığın, uygulama için dizileri veya bağlantılı liste veri yapısını kullanan bir ADT'dir (Soyut veri türü). Bu nedenle, belirli bir ADT'yi uygulamak için bazı veri yapılarına ihtiyacımız olduğu sonucuna vardık.

Bir ADT şunu söylüyor: Ne yapılacak ve veri yapısı anlatıyor Nasıl yapılması gerekiyor. Yani ADT'nin bize planı verdiğini, veri yapısının ise uygulama kısmını sağladığını söyleyebiliriz. Şimdi şu soru ortaya çıkıyor: Belirli bir ADT için hangi veri yapısının kullanılacağı nasıl öğrenilebilir?

Farklı veri yapıları belirli bir ADT'de uygulanabildiğinden, farklı uygulamalar zaman ve mekan açısından karşılaştırılır. Örneğin, Stack ADT hem Diziler hem de bağlantılı liste tarafından uygulanabilir. Dizinin zaman verimliliği sağladığını, bağlantılı listenin ise alan verimliliği sağladığını varsayalım; dolayısıyla mevcut kullanıcının gereksinimlerine en uygun olan seçilecektir.

Veri yapılarının avantajları

Bir veri yapısının avantajları şunlardır:

betiği çalıştırılabilir yap
    Yeterlik:Belirli bir ADT'yi uygulamak için veri yapısının seçimi uygunsa, programı zaman ve mekan açısından çok verimli hale getirir.Tekrar Kullanılabilirlik:Veri yapısının yeniden kullanılabilirlik sağlaması, birden fazla istemci programının veri yapısını kullanabileceği anlamına gelir.Soyutlama:Bir ADT tarafından belirlenen veri yapısı aynı zamanda soyutlama düzeyini de sağlar. Müşteri veri yapısının iç işleyişini göremez, dolayısıyla uygulama kısmı hakkında endişelenmesine gerek kalmaz. İstemci yalnızca arayüzü görebilir.

Veri Yapıları Dizini


DS'nin Temelleri

  • DS'ye Giriş
  • DS Asimptotik Analizi
  • DS Yapısı

DS Dizisi

  • 2D Dizi

DS Bağlantılı Liste

  • Bağlantılı liste
    • Başlangıçta ekleme
    • Sonunda ekleme
    • Belirtilen düğümden sonra ekleme
    • Başlangıçta silme
    • Sonunda silme
    • Belirtilen düğümden sonra silme
    • Geçiş
    • Aranıyor
  • Çift Bağlantılı Liste
    • Başlangıçta ekleme
    • Sonunda ekleme
    • Belirtilen düğümden sonra ekleme
    • Başlangıçta silme
    • Sonunda silme
    • Veri verilen düğümün silinmesi
    • Geçiş
    • Aranıyor
  • Dairesel Bağlantılı Liste
    • Başlangıçta ekleme
    • Sonunda ekleme
    • Başlangıçta silme
    • Sonunda silme
    • Geçiş
    • Aranıyor
  • Dairesel İkili Liste
    • Başlangıçta ekleme
    • Sonunda ekleme
    • Başlangıçta silme
    • Sonunda silme

DS Yığını

DS Kuyruk

DS Ağacı

DS Grafiği

DS Arama

DS Sıralaması

Görüşme soruları

Java'da geçerli tarih
  • Tek bağlantılı liste oluşturup görüntüleyen program
  • N düğümden oluşan tek bağlantılı bir liste oluşturan ve düğüm sayısını sayan program
  • N düğümden oluşan tek bağlantılı bir liste oluşturup bunu ters sırada görüntüleyen program
  • Tek bağlantılı listenin başlangıcından yeni bir düğümü silen program
  • Tek bağlantılı listenin ortasından yeni bir düğümü silen program
  • Tek bağlantılı listenin sonundaki bir düğümü silen program
  • Tek bağlantılı bir listenin palindrom olup olmadığını belirleyen program
  • Tek bağlantılı bir listeden maksimum ve minimum değer düğümünü bulan program
  • Tek bağlantılı listenin ortasına yeni bir düğüm ekleyen program
  • Tek bağlantılı listenin başına yeni bir düğüm ekleyen program
  • Tek bağlantılı listenin sonuna yeni bir düğüm ekleyen program
  • Tek bağlantılı listeden yinelenen öğeleri kaldırma programı
  • Tek bağlantılı listedeki bir öğeyi arayan program
  • Tek bağlantılı listenin öğelerini sıralayan program
  • Verileri değiştirmeden tek bağlantılı bir listedeki düğümleri değiştiren program
  • Tek bağlantılı listenin son elemanını ilkinden değiştiren program

Çift Bağlantılı Liste Programları

  • Verilen Bir İkili Ağacı Çift Bağlantılı Listeye Dönüştüren Program
  • Üçlü Ağaçtan Çift Bağlantılı Liste Oluşturma Programı
  • Çift Bağlantılı N Düğüm Listesi Oluşturma ve Düğüm Sayısını Sayma Programı
  • N Düğümün Çift Bağlantılı Listesini Oluşturan ve Bunu Ters Sırada Görüntüleyen Program
  • Çift Bağlantılı Liste Oluşturma ve Görüntüleme Programı
  • Çift Bağlantılı Listenin Başından Yeni Bir Düğümü Silme Programı
  • Çift Bağlantılı Listenin Sonundan Yeni Bir Düğümü Silme Programı
  • Çift Bağlantılı Listenin Ortasından Yeni Bir Düğümü Silme Programı
  • Çift Bağlantılı Listeden Maksimum ve Minimum Değer Düğümünü Bulan Program
  • Çift Bağlantılı Listenin Başına Yeni Bir Düğüm Ekleme Programı
  • Çift Bağlantılı Listenin Sonuna Yeni Bir Düğüm Ekleme Programı
  • Çift Bağlantılı Listenin Ortasına Yeni Bir Düğüm Ekleme Programı
  • Çift Bağlantılı Listeden Yinelenen Öğeleri Kaldırma Programı
  • Çift Bağlantılı Listeyi N Düğüme Göre Döndürecek Program
  • Çift Bağlantılı Listedeki Bir Elemanı Arama Programı
  • Çift Bağlantılı Listenin Elemanlarını Sıralama Programı

Dairesel Bağlantılı Liste Programları

  • N Düğümün Dairesel Bağlantılı Listesini Oluşturma ve Düğüm Sayısını Sayma Programı
  • N Düğümün Dairesel Bağlantılı Listesini Oluşturan ve Bunu Ters Sırada Görüntüleyen Program
  • Dairesel Bağlantılı Liste Oluşturma ve Görüntüleme Programı
  • Dairesel Bağlantılı Listenin Başından Yeni Bir Düğümü Silme Programı
  • Dairesel Bağlantılı Listenin Sonundan Yeni Bir Düğümü Silme Programı
  • Dairesel Bağlantılı Listenin Ortasından Yeni Bir Düğümü Silme Programı
  • Dairesel Bağlantılı Listeden Maksimum ve Minimum Değer Düğümünü Bulan Program
  • Dairesel Bağlantılı Listenin Başına Yeni Bir Düğüm Ekleme Programı
  • Dairesel Bağlantılı Listenin Sonuna Yeni Bir Düğüm Ekleme Programı
  • Dairesel Bağlantılı Listenin Ortasına Yeni Bir Düğüm Ekleme Programı
  • Döngüsel Bağlantılı Listeden Yinelenen Öğeleri Kaldırma Programı
  • Dairesel Bağlantılı Listede Bir Öğeyi Arama Programı
  • Dairesel Bağlantılı Listenin Öğelerini Sıralama Programı

Ağaç Programları

  • Bir İkili Ağacın Tek Seviyeli ve Çift Seviyeli Düğümlerinin Toplamı Arasındaki Farkı Hesaplayan Program
  • İkili Arama Ağacı Oluşturma ve Silme ve Sıralı Geçiş Gerçekleştirme Programı
  • İkili Ağacı İkili Arama Ağacına Dönüştürme Programı
  • Tüm Yaprakların Aynı Seviyede Olup Olmadığını Belirleyen Program
  • İki Ağacın Aynı Olup Olmadığını Belirleyen Program
  • İkili Ağacın Maksimum Genişliğini Bulan Program
  • İkili Ağaçtaki En Büyük Öğeyi Bulan Program
  • Bir Ağacın Maksimum Derinliğini veya Yüksekliğini Bulan Program
  • İkili Ağaçta Maksimum Uzaklıkta Olan Düğümleri Bulan Program
  • İkili Ağaçtaki En Küçük Elemanı Bulma Programı
  • İkili Ağacın Tüm Düğümlerinin Toplamını Bulan Program
  • N Tuşla Olası İkili Arama Ağaçlarının Toplam Sayısını Bulan Program
  • Bağlantılı Listeyi Kullanarak İkili Ağacı Uygulama Programı
  • İkili Ağaçta Düğüm Arama Programı

Önkoşul

Veri Yapısını öğrenmeden önce temel C bilgisine sahip olmanız gerekir.

Kitle

Veri Yapısı eğitimimiz yeni başlayanlara ve profesyonellere yardımcı olmak için tasarlanmıştır.

Sorun

Bu Veri Yapısı eğitiminde herhangi bir sorun bulamayacağınızı garanti ediyoruz. Ancak herhangi bir hata varsa lütfen iletişim formuna gönderin.