Sobes.tech
Junior

Milyen tárolókra épülnek a stack és queue adatszerkezetek?

sobes.tech MI

Válasz az MI-től

Az std::stack alapértelmezés szerint az std::deque-re épül. Az std::queue szintén alapértelmezés szerint az std::deque-re épül.

Más konténerek is használhatók:

  • Az std::stack alapulhat az std::vector-en vagy az std::list-en.
  • Az std::queue alapulhat az std::list-en.

A szükséges feltétel az alapkonténer számára: támogatnia kell az elemek hozzáadását és eltávolítását egyik vagy mindkét végén (a stack esetében csak egy végén, a queue esetében különböző végén).

Példák más konténerekkel való használatra:

#include <stack>
#include <queue>
#include <vector>
#include <list>

// std::vector alapú stack
std::stack<int, std::vector<int>> vector_stack;

// std::list alapú stack
std::stack<int, std::list<int>> list_stack;

// std::list alapú queue
std::queue<int, std::list<int>> list_queue;