Junior
sort funksiyasında hansı sıralama alqoritmi istifadə olunur?
sobes.tech Süni İntellekt
AI-dan cavab
C++ standart kitabxanasında, std::sort funksiyası adətən Introsort (İntrospektiv Sıralama) algoritmindən istifadə etməklə həyata keçirilir. Bu, aşağıdakıları birləşdirən hibrid algoritmdir:
- Əksər hallarda Quicksort (Sürətli Sıralama)
- Rekursiya dərinliyi çox böyük olarsa Heapsort (Yığın Sıralama)
- Kiçik alt massivlər üçün Insertion Sort (Əlavə Sıralama)
Introsort, orta hesabla Quicksort-un yaxşı performansını təmin edir və ən pis halda O(n log n) zəmanət verir, bu da Heapsort-a keçməklə mümkün olur.
std::sort-un istifadəsinə nümunə:
#include <algorithm>
#include <vector>
#include <iostream>
int main() {
std::vector<int> v = {5, 3, 2, 4, 1};
std::sort(v.begin(), v.end());
for (int n : v) {
std::cout << n << ' ';
}
return 0;
}
Beləliklə, std::sort Introsort-ə əsaslanan yüksək performanslı algoritmdir.