Home / Veri Yapıları

Veri Yapıları

Hashing Nedir? (Veri Yapıları)

Veri yapıları dersleri kapsamında Hashing nedir sorusunu ayrıntılı bir şekilde cevaplamaya çalışacağız. Hashing’i anlatmadan önce, programlama dünyasında özellikle ram üzerindeki bir veriyi bulmakla ilgili bir derdimizin olduğunu bilmek gerekir. Bir veri yapısı üzerinde bir veriyi aramak ve bulmak sancılı bir süreçtir. Bu konuyla ilgili çeşitli arama algoritmaları oluşturulmuş, çeşitli veri …

Devamı »

Recursive Fonksiyon (Özyinelemeli Fonksiyonlar) Nedir?

Türkçesi özyinelemeli demek olan Recursive fonksiyonlar esasen fonksiyonun çalışma biçimini bize anlatan ifadedir. Bildiğiniz üzere fonksiyonlar ikiye ayrılır, birincisi geri dönüş tipi olmayan void türündeki fonksiyonlar, ikincisi ise return tipi olan fonksiyonlardır. Recursive fonksiyonlar kendi kendisini çağırırlar, bu çağırma işlemi belirli bir amaç doğrultusunda yapılır ve belirli bir durum sağlanınca …

Devamı »

Çift Yönlü Bağlı Liste – Eleman Ekleme & Eleman Silme C kodu

Aşağıdaki kod 6 tane operasyonu içermektedir. Çift Yönlü Bağlı Listelerde Sona Eleman Ekleme Çift Yönlü Bağlı Listelerde Başa Eleman Ekleme Çift Yönlü Bağlı Listelerde Araya Eleman Ekleme Çift Yönlü Bağlı Listelerde Baştan Eleman Silme Çift Yönlü Bağlı Listelerde Sondan Eleman Silme Çift Yönlü Bağlı Listelerde Aradan Eleman Silme Kodların Adım …

Devamı »

Çift Yönlü Bağlı Listeler Konu Anlatımı – Çift Yönlü Bağlı Liste Oluşturma

Daha önce Veri Yapıları Derslerimiz kapsamızda Tek Yönlü Bağlı Listeler konusunu anlatmıştık. Bu dersimiz kapsamında Çift Yönlü Bağlı Liste konusuna değineceğiz. Çift yönlü bağlı listeler yapısal anlamda tek yönlü bağlı listelere çok benzer, tek farkları ise fazladan işaretçi değişken barındırmalarıdır. Hatırlıyorsanız tek yönlü bağlı listeler yalnızca kendilerinden sonra gelen düğümü …

Devamı »

Bağlı Liste Tüm İşlemler (Eleman Ekleme – Eleman Silme – Ters Çevirme)

Aşağıda size tek yönlü bağlı liste ile yapılabilecek tüm işlemlerin bulunduğu yazılım paylaşılmıştır. C kodu ile yazılmış olan bu kodun içeriğinde aşağıdaki operayonlar bulunmaktadır. Eleman Ekleme İşlemleri Bağlı Liste Sonuna Eleman Ekleme Bağlı Liste Başına Eleman Ekleme Herhangi bir pozisyona eleman Ekleme Eleman Silme İşlemleri Bağlı Liste Sondan Eleman Silme …

Devamı »

İkili Arama Ağacı – Eleman Silme İşlemi

Size daha önce ikili arama ağacı eleman arama ve ikili arama ağacı eleman ekleme konularından bahsetmiştik. Şimdi ise sırada nispeten zor bir konu olan BST Eleman Silme konusuna bakacağız. İkili Arama Ağacı – Eleman Silme Durumları İkili arama ağacında silinmek istenen düğüm 3 durumda bulunabilir. 1) Silinmek istenen düğüm Leaf …

Devamı »

İkili Arama Ağacı (BST) Eleman Ekleme İşlemi

BST üzerinde eleman ekleme işlemi de İkili Arama Ağacı Search işlemine benzer bir şekilde yapılır. Eklemenin doğru konumda olması önemlidir. Zira İkili Arama Ağacı yapısını bozmamız gerektiğinden doğru konumu bulmak için Search işlemi yaparız, ancak bu arama işleminde aranan düğüm değil, NULL değerdir. Zira ancak boş olan konuma ekleme yapabiliriz. …

Devamı »

İkili Arama Ağacı (BST) Search (arama) İşlemi

Bir önceki yazımızda İkili Ama Ağacı özelliklerinden bahsetmiştik. Şimdi sıra bir ağaç üzerinde aradığımız düğümü nasıl bulacağımıza. Elbette arama işlemi derken esas kast ettiğimiz mevzu traverse işlemidir. Aramanın Traverse’den farkı aranılan düğüm bulunduğunda durmaktır. Traverse ise tüm düğümleri dolaşmayı hedefler. Peki Binary Search Tree (İkili arama ağacı) Arama işlemi algoritması …

Devamı »

İkili Arama Ağacı Nedir?

İkili Arama Ağacı, İkili Ağaç’ların en önemli türlerinden bir tanesidir. Bu yapıda da her düğümün en fazla iki tane çocuğu (child) olabilir. İkili Arama Ağacı Özellikleri Nelerdir? İkili Arama ağacı özelliklerini şu şekilde sıralayabiliriz; Sol çocuk (left child), Parent node’ın değerinden küçük olmalıdır. Sağ çocuk (right child), parent node’ın değerinden …

Devamı »

İkili Ağaç Özellikleri

Bir önceki yazımızda ikili ağaçlara giriş yapmıştık. Şimdi İkili Ağaç özelliklerini inceleyelim. İkili ağaçlar en fazla iki tane child node sahip olabildikleri için bir takım özel kurallara sahip olurlar. 1- l. Level’daki toplam düğüm sayısı 2l-1  kadardır Örneğin root yani kök düğümün Level’ı 1’dir. n = 1 dersek 2^(1-1) = …

Devamı »