Dizi Veri Yapısı Nedir?
Dizi bilgisayar bilimlerinde dizinle (satır numarasıyla) erişilen bir veri öbeği oluşturmak için kullanılacak olan bir veri yapısıdır. Çoğu programlama dilinde bir dizinin tuttuğu bütün öğeler aynı veri türündendir ve dizi ardışık bellek adresleriyle gösterilen konumlarda saklanır. Çoğu programlama dilinin İngilizce array sözcüğüyle tanımlanan kendine ait bir veri türü bulunmaktadır.
- Dizi içindeki bir eleman, sıra numarasıyla temsil edilir.
- Bir eleman, dizinin adı ve parantez içinde ([]) elemanın pozisyon numarasıyla ifade edilir.
- Dizideki ilk elemanın sıra numarası sıfırdır.
Örneğin; a dizisinin ilk elemanının sıra numarası 0’dır ve a[0] şeklinde gösterilir.
Dizilerin Avantajları
- Rastgele her elemana index kullanımı ile hızlıca erişebilir.
- Her elemanın değeri kolayca değiştirilebilir veya silinebilir.
- Kolay bir şekilde sıralama yapılabilir.
- Stacks, Queues; Heaps ve Hash table gibi veri yapılarının temelini oluşturur.
Dizilerin Dezavantajları
- Sabit bir kapasitesi vardır.
- Başa, ortaya ve sona yeni eleman eklenemez veya silinemez.
Diziler Ne Zaman Kullanılır?
- Uzunluğu değişmeyen bir listeniz varsa
- Değerlerinin tipi aynı ise
- Listede matematiksel işlemler yapmanız gerektiğinde
- İndex kullanarak hızlı tarama ve değer değiştirme yapmanız gerektiğinde
- Hafızayı verimli kullanmanız gerektiğinde
Dizinin Bellekteki Organizasyonu
Dizi oluştururken, bellekte belirli bir alan bu dizinin elemanları için ayrılır. Dizi boyutu ne kadar büyük tanımlanmışsa o kadar çok bellek kullanımı olur.
Dizi Oluşturma
Dizi oluşturulurken aşağıdaki gibi kodlar kullanılabilir
Diziye Eleman Ekleme
Diziye, diziyi oluştururken ya da diziyi oluşturduktan sonra eleman eklenebilir.
Bu yöntem dışında tek tek veri atama ve for döngüsü ile veri atama yöntemleri de vardır.
Dizide Eleman Arama
Dizide bir eleman aranıyorsa indexof metodundan yararlanılır. Aranan eleman dizide bulunuyorsa elemanın index değerini döndürür. Eğer bulunmuyorsa “-1” döndürür.”-1” eleman bulunamadı anlamına gelir.
Dizide Eleman Silme
Dizi veri yapısında elemanlar silinemez. Bunun yerine elemanların bulundukları indexler temizlenir. Temizleme işleminde belirtilen indexe veya indexlere boş değer (0) atanır.
Foreach döngüsü ile tüm elemanlar yazdırılmıştır.
Dizide Eleman Yazdırma
Dizide tek tek index değerlerini kullanılarak da bir ya da birden daha fazla eleman yazdırılabilir. Ayrıca for ve foreach döngüleri ile de tüm elemanlar yazdırılabilir.
Dizideki Eleman Sayısını Öğrenme
Dizideki toplam eleman sayısını öğrenmek için Length ifadesi kullanılır
Diziyi Yeniden Boyutlandırmak
Dizi, Array.Resize metodu ve yeni bir dizi oluşturup eski dizinin elemanlarını yeni diziye kopyalamak koşulu ile iki farklı yolla yeniden boyutlandırılabilir.
Kaynakça:
https://www.youtube.com/watch?v=Itj319eYDMY
https://docplayer.biz.tr/5583477-Diziler-arrays-giris-veri-yapilari-data-structures.html