Thynex Academy
Ծրագրավորման ուսումնական գործիքներ
Գործիքների ցանկ

STL Container Adapters

stack (LIFO), queue (FIFO), priority_queue (max-heap) — տեսողականորեն դիտեք push/pop/top, sift-up/down քայլերը, top/front/back ցուցիչները։

std::stack — LIFO ադապտեր (Last In, First Out)
Բոլոր գործողությունները՝ վերին ծայրում (top)։ Push դնում է վերևից, pop վերցնում է վերևից։ Հիմքում՝ std::deque (default) կամ std::vector։ Բոլոր op-ները՝ O(1)։
  • ✓ push / pop / top — O(1) ամորտիզացված
  • ✓ Function-call stack, undo, expression eval, DFS
  • ✗ Չկա random access, ոչ middle insert
std::queue — FIFO ադապտեր (First In, First Out)
Push back-ին, pop՝ front-ից։ Երկու ծայր, երկու ցուցիչ։ Հիմքում՝ std::deque (default) — pop-ը O(1)։ Vector-ով կլիներ O(n)։
  • ✓ push / pop / front / back — O(1)
  • ✓ BFS, task scheduler, producer-consumer
  • ✗ Չկա random access, ոչ priority
std::priority_queue — heap-հիմնված (default՝ max-heap)
Բինար heap zangvac-ի վրա (std::vectortop = max միշտ՝ root-ում։ Push-ից հետո՝ sift-up, pop-ից հետո՝ sift-down։ Push/pop՝ O(log n), top՝ O(1)։
  • ✓ top — O(1), push/pop — O(log n)
  • ✓ Dijkstra, A*, top-K, scheduling priorities
  • ✗ Չկա ընդհանուր find / sorted iteration (heap ≠ sorted array)