queue-priority queue
queue şablon sınıfı, sıranın C ++ ‘da çoğaltılması için kullanılır, ekleme her zaman sıranın arkasında gerçekleşir ve silme her zaman sıranın ön kısmında gerçekleştirilir.
push() : sıranın arkasına eleman ekler
pop() : sıranın ilk elemanını çıkarır ayrıca sıranın boyutunu 1 azaltır
front(): sıranın en baştaki elemanını döndürür
back(): sıranın sonundaki elemanı döndürür
size(): sıranın eleman sayısını döndürür
empty(): sıranın boş olup olmadığını kontrol eder.boş ise 1 ,dolu ise 0 değerini döndürür
swap(): iki sıranın elemanları arasında takas yapar
Sıranın ilk ve son elemanını görme
int main() { queue<int> q; // boş sıra q.push(12); // sıraya 12 ekledik cout << q.front() <<" "<<q.back() << endl; // ilk eleman 12 son eleman 12 q.push(13); // sıraya 13 ekledik cout << q.front() << " " << q.back() << endl; // ilk eleman 12 son eleman 13 getchar(); return 0; } çıktı 12 12 12 13
Sıradan eleman çıkarma
int main() { queue<int> q; // boş sıra q.push(12); // sıraya 12 ekledik q.push(13); // sıraya 13 ekledik q.push(14); // sıraya 14 ekledik cout << q.front() << " " << q.back() << endl; // ilk eleman 12 son eleman 14 q.pop(); // sıradan ilk eleman çıkar (12) cout << q.front() << " " << q.back() << endl; // ilk eleman 13 son eleman 14 getchar(); return 0; } çıktı 12 14 13 14
priority queue
priority queue’nin,queue’den tek farkı elemanların büyükten küçüğe doğru sıralanmasıdır.
int main() { priority_queue<int> q; q.push(7); // ilk eleman 7 son eleman 7 q.push(9); // ilk eleman 9 son eleman 7, q.push(8); // ilk eleman 9 son eleman hala 7 // normal queue olsa idi sıralama 7 9 8 olurdu // priority queue olduğu için sıralama 9 8 7 oldu cout<<q.top()<<endl; // ilk eleman 9 q.pop(); // sıranın ilk elemanı cıkar (9) cout << q.top(); // ilk eleman artık 8 getchar(); return 0; } çıktı 9 8