Bu sitedeki yazıların tamamı F. Oğuz ÖZKEROĞLU isimli şahıs tarafından uydurulmuş bilgilerden oluşmaktadır.

İçeriği kullanmak için kimseden izin alınmasına gerek yoktur.

Şimdiki çocuklar harika           

Satranç

Eskiden sokakta bilye, gazoz kapağı oynayan çocuklar artık satranç oynuyorlar. Öyle amatörce de değil, gayet iyiler. 13 – 14 – 15 Mart’ta yapılan 18 Mart Deniz Zaferi Satranç turnuvasına minikler damgasını vurdu. Rakiplerini bir bir yenerek üst sıralarda yer aldılar. Öyle ki aralarında milli takım oyuncusunun bile bulunduğu tecrübeli kadro yanında ilk onda 2 tane de minik sporcu vardı. İlk iki sırayı Doğan – Devran Dönmez kardeşlerin aldığı turnuvada ben de zar zor 7. oldum. 70 sporcunun katılımıyla gerçekleşen organizasyonda ilk 10 şöyle oldu :

Rk. Name FED Rtg Pts. TB1 TB2 TB3
1 DÖNMEZ DOĞAN TUR 1860 6,5 23,0 206,5 28,00
2 DÖNMEZ DEVRAN TUR 1884 6,0 25,5 207,0 30,50
3 MUŞTUOĞLU ÜMİT TUR 1638 6,0 21,5 199,5 24,50
4 YILMAZ GİZEM TUR 1674 5,0 23,0 191,5 21,50
5 SAKARYA MERT TUR 1566 5,0 22,5 194,0 19,00
6 AK DİREN TUR 1503 5,0 22,0 192,0 19,25
7 ÖZKEROĞLU FEHMİ OĞUZ TUR 1475 5,0 21,5 196,5 18,50
8 BAYSAL RIZA TUR 0 5,0 21,0 200,5 17,75
9 GÜL RÜZGAR ALP TUR 1511 5,0 21,0 196,0 20,50
10 EYÜBOĞLU BİLAL OGÜN TUR 1425 5,0 20,5 173,5 20,00

Çomü Satranç Topluluğu           

Okulun (Çanakkale Onsekiz Mart Üniversitesi) satranç topluluğu için yaptığım siteyi nihayet yayınladık. Verdiği nimetlerden ötürü WordPress’e minnettarız :)

Çanakkale 18 Mart Üniversitesi Satranç

Kullandığım tema ie 5′te sorun çıkarsa da bu konudan ödün verip topluluktakilerin ortak kararı olarak kullanmaya devam edeceğiz.

Mart 4, 2009

algoritmalar, java

1 yorum

Bilgisayar ortamında verilerin sıralı olması birçok işi kolaylaştırır. Arama, ekleme, bölme vs. durumlarında verilerin sıralı olması ile olmaması arasında çok büyük performans farkı olabilir.
Birçok algoritma (örneğin binary search) sıralı veriler üzerinde çalışır. Kullanıcı için de verilerin sıralı olması büyük kolaylık sağlar.
Verilerin sıralanması için birçok algortima geliştirilmiştir.

* Selection Sort
* Bubble sort
* Insertion sort
* Shell sort
* Merge sort
* Heapsort
* Quicksort
* Bucket sort
* Radix sort
* Distribution sort
* Shuffle sort

Listeyi uzatmak mümkün. Sıralanacak veririn boyutu, yazılacak kod maliyeti, sistem kaynakları, kullanıcı tercihi vb. durumlara göre herhangi biri tercih edilebilir.
Bunlardan Selection Sort’u inceleyelim. Sayı dizisini kullaracak olursak, algoritma ilk adımda tüm diziyi dolaşacak, en küçük elemanı bulup ilk sıraya yazacak.
Sonra dizinin kalan kısmında aynı işi yeniden yapacak. Kalan kısmı tarayıp en küçük elamanı bulup, ikinci sıraya yazacak. Bu şekilde son elemana kadar gidip en küçükten büyüğe doğru dizimiz sıralanmış olacak.

Viki’de aşağıdaki animasyonu buldum, Selection Sort için hazırlanmış basit bi şey.

Selection Sort

Fonksiyon için de C ve Java’da aşağıdaki kodları yazdım. Aynı işi yapan benzer şeyler de yazılabilir.

C/C++ kodu :

void selectionSort (int dizi[], int elemanSayisi)
{
     int i, j, enKucuk, temp;
     for (i=0; i<elemanSayisi-1; i++)
     {
         enKucuk = i;
         for (j=i+1; j<elemanSayisi; j++)
         {
             if (dizi[j] < dizi [enKucuk])
             enKucuk = j;
         }
         temp = dizi[i];
         dizi[i] = dizi[enKucuk];
         dizi[enKucuk] = temp;
     }
}

Java kodu :

    private static void selectionSort(int [] dizi,int n)
    {
        int temp;
        int enKucuk;
        for(int i=0; i<n-1; i++)
        {
            enKucuk=i;
            for(int j=i; j<n; j++)
            {
                if (dizi[j] < dizi[enKucuk]) enKucuk=j;
            }
            temp=dizi[i];
            dizi[i]=dizi[enKucuk];
            dizi[enKucuk]=temp;
        }
    }

Fonksiyon argüman olarak aldığı diziyi Selection Sort algoritması ile sıralıyor.

İç içe iki tane döngü kullanıldığı için algoritmanın karmaşıklığı O(n²) olur. Küçük boyutlu dizilerde fazla kod yazmaya gerek kalmadan kullanılabilecek bir algoritmadır.

Satranç           

Lisede sürekli oynadığım satranca üniversiteye geldiğimden beri uzun bir ara (3 yıl kadar) vermiştim. Sebebini de hiç düşünmedim gerçi. Bugünlerde yeniden başladım satranç oynamaya. Eski tadım yerine gelmeye başladı. Yakında o turnuva senin bu turnuva benim koşmaya başlarım yine :)