Karşılaştırıcı ile sıralama


Karşılaştırıcı ile sırala
Bir vektör (dizi gibi)  sort() işlevi kullanılarak sıralanabilir. Ancak bu işlev, varsayılan olarak artan düzende sıralar. Bir diziyi farklı bir düzende sıralamak için, iki nesneyi karşılaştırarak sıralama düzenini belirleyen karşılaştırıcı  adlı işlevi kullanmanız gerekir. .
 
Örnek
Bir dizinin öğelerini artan düzende sıralayan bir karşılaştırıcı örneği. bool cmp(önce int, ikinci int) { önce dön
ve oluşturulan karşılaştırıcıyı kullanarak A vektörünü sıralamak: sort(A.begin(), A.end(), cmp); Yineleyicileri düşünün

Problemin durumuna göre stable (stable) sıralama yapılması gerektiği açıktır, bu nedenle sort yerine stable_sort kullanılmalıdır.

Ayrıca sıralama işlevini çağırmadan önce oluşturabileceğiniz bir karşılaştırıcı olarak bir işlev nesnesi belirtebilirsiniz.
Örneğin:
yapı {
        bool operatör()(int a, int b) const
        {
            bir < b'yi döndür
        }
    }cmp;