C Sharp Görsel Programlama - Diziler ve Dizilere Ait (Sort, BinarySearch,IndexOf ve Reverse) Fonksiyonları

Diziler (Array)

Çok sayıdaki değişken değerinin birkaç kez yeniden kullanılabilmesi için bellekte saklanması gerekmektedir.
Bu amaçla dizilerin kullanılması en uygun yol olarak ortaya çıkmaktadır.

Dizinin Tanımlanması


<veri tipi> [ ] <değişken adı>;
deyimi ile derleyiciye bir dizinin kullanılacağı belirtilmektedir.

Ancak, bu dizinin kaç elemanlı olacağı

<değişken adı> = new <veri tipi>[<tamsayı>];

deyimi ile ya da kısaca

<veri tipi> [ ] <değişken adı> = new <veri tipi>[<tamsayı>];

deyimi ile gerçekleştirilebilir.


Örnekler

int [ ] ogrenci;
ogrenci = new int[50];

string [ ] isimler;
isimler = new string[40];

bool [ ] kontrol = new bool[5];

ÖNEMLİ NOT:

<değişken adı> = new <veri tipi>[<tamsayı>]; deyimi ile tanımlanmış bir dizinin elemanları klasik C derleyicisinde olduğu gibi 0 ile <tamsayı> - 1 arasında değer almaktadır.

Kullanılacak döngü deyimlerinde buna özellikle dikkat edilmesi gerekmektedir.

ÖRNEK;
string satir;
int [ ] ogrenci;
ogrenci = new int[5]; // altsıra 0, 1, 2, 3, 4 olacaktir
int i;

for (i = 1; i <= 5; i++)
{
    satir = Console.ReadLine();
        ogrenci[i] = Convert.ToInt32(satir);
}


Dizilere İlk Değer Atama

int [ ] liste;
liste = new int[5] {10, 45, 23, 19, 46};

string [ ] gunler = new string[7] {“Pazartesi”, “Sali”, “Carsamba”, “Persembe”, “Cuma”, “Cumartesi”, “Pazar”};

Dizilere İlişkin Özel Metotlar

Dizilerin elemanlarını sıralamak için
Array.Sort
Dizide bir elemanı aramak için
Array.BinarySearch
Array.IndexOf
Dizi elemanlarının sıralanışını ters çevirmek için
Array.Reverse


Array.Sort Fonsiyonu Örnek Kullanım Şekli

int [ ] liste;
liste = new int[10] {10, 45, 23, 19, 46, 35, 20, 49, 11, 21};
int i;

Array.Sort(liste);

for (i = 0; i <= liste.GetUpperBound(0); i++)
{
    Console.WriteLine(liste[i]);
}


Array.BinarySearch Fonsiyonu Kullanımı

Bir dizi içerisinde ikili arama tekniğini (binary search) kullanarak arama yapar.

Dizinin mutlaka daha önceden sıralanmış olması gerekmektedir.

Bulunan değer için dizideki yer, bulunamayan değer için -1 sayısı döndürülür.



Array.BinarySearch Örnek Kullanım Şekli

int [ ] liste;
liste = new int[10] {10, 45, 23, 19, 46, 35, 20, 49, 11, 21};
int x, yer;

x = 19;
yer = Array.BinarySearch(liste, x);
Console.WriteLine("Dizideki yeri = " + yer);

Array.Sort(liste);
yer = Array.BinarySearch(liste, x);
Console.WriteLine("Dizideki yeri = " + yer);



Array.IndexOf Fonsiyonu Kullanımı


Bir dizi içerisinde sıralı arama tekniğini (sequential search) kullanarak arama yapar.

Dizinin daha önceden sıralanmış olması gerekMEmektedir.

Bulunan değer için dizideki yer, bulunamayan değer için -1 sayısı döndürülür.



Array.IndexOf Fonsiyonu Örnek Kullanım Şekli

int [ ] liste;
liste = new int[10] {10, 45, 23, 19, 46, 35, 20, 49, 11, 21};
int x, yer;

x = 46;
yer = Array.IndexOf(liste, x);
Console.WriteLine("Dizideki yeri = " + yer);



Array.Reverse Fonsiyonu Örnek Kullanım Şekli

int [ ] liste;
liste = new int[10] {10, 45, 23, 19, 46, 35, 20, 49, 11, 21};
int i;

Array.Reverse(liste);

for (i = 0; i <= liste.GetUpperBound(0); i++)
{
    Console.WriteLine(liste[i]);
}
 

  • Tarih : 12.11.2015 14:50:57


Etiketler: diziler , array.sort , BinarySearch , IndexOf , Reverse ,

Yapılan Yorumlar

Sizde Bir Yorum Yazın...