CSPLague
[STOCK] Dizilerde Sıralama Algoritması - Printable Version

+- CSPLague (https://www.csplague.com)
+-- Forum: CS 1.6 Plugin (Eklenti) Bölümü (https://www.csplague.com/forumdisplay.php?fid=6)
+--- Forum: [KOD] Pawn Script (https://www.csplague.com/forumdisplay.php?fid=82)
+--- Thread: [STOCK] Dizilerde Sıralama Algoritması (/showthread.php?tid=8158)



[STOCK] Dizilerde Sıralama Algoritması - akcaliberkk - 27-07-13

Açıklama:

Bu stock ile tek boyutlu sayısal dizilerinizi küçükten büyüğe veya büyükten küçüğe doğru sıralayabilirsiniz.


PHP Code:
stock dizi_siraladizi[] , maxlenflag=) {
    
    static 
num_tmparray_tmp;
    switch(
flag) {
        case 
1:{
            for(new 
i<maxlen i++) {
                
num_tmp i;
                for(new 
i+j<maxlen+j++) {
                    if(
dizi[num_tmp] > dizi[j]) {
                        
num_tmp j;
                    }
                }
                if( 
num_tmp != i) {
                    
array_tmp dizi[num_tmp];
                    
dizi[num_tmp] = dizi[i];
                    
dizi array_tmp;
                }
            }
        }
        case 
2:{
            for(new 
i<maxlen i++) {
                
num_tmp i;
                for(new 
i+j<maxlen+j++) {
                    if(
dizi[num_tmp] < dizi[j]) {
                        
num_tmp j;
                    }
                }
                if( 
num_tmp != i) {
                    
array_tmp dizi[num_tmp];
                    
dizi[num_tmp] = dizi;
                    
dizi array_tmp;
                }
            }
        }
    }


Ayrıntılar:

1. parametre = Sıralanacak sayıları içeren tek boyutlu dizi.
2. parametre = Dizinin maksimum uzunluğu. ( charsmax(dizi) )
3. parametre = Sıralama şekli ( 1: Küçükten büyüğe doğru, 2: Büyükten küçüğe doğru )

Örnek:


PHP Code:
new array[10] = { 581304926}

/***********************************************/

dizi_sirala(array, 91)

// Son Hali:
012345678}

/************************************************/

dizi_sirala(array, 92)

// Son Hali:
987654321
[/i][/i][/i][/i]


Cevap: [STOCK] Dizilerde Sıralama Algoritması - FqhTR - 27-07-13

Teşekkürler... Ama bunun için pawn'da zaten fonksiyon bulunuyor? (SortIntegers)


Cevap: [STOCK] Dizilerde Sıralama Algoritması - Nobb - 27-07-13

Teşekkürler...


Cevap: [STOCK] Dizilerde Sıralama Algoritması - akcaliberkk - 27-07-13

Evet biliyorum, öğrenmek isteyenler için nasıl çalıştığını göstermek istedim. Her dilde lazım olan bir şey pawnda varsa da daha büyük dillerde bazen kendin yazmak zorunda kalabiliyorsun.


Cevap: [STOCK] Dizilerde Sıralama Algoritması - FqhTR - 27-07-13

Doğru söylüyorsun... Mesela C gibi.

Bu bir bubble sort ornegi galiba?


Cevap: [STOCK] Dizilerde Sıralama Algoritması - akcaliberkk - 27-07-13

selection sort