Los contenedores comúnmente utilizados se resumen a continuación:
vector : un contenedor de matriz dinámica que admite acceso aleatorio, inserción y eliminación de colas, y es adecuado para escenarios que requieren acceso aleatorio rápido y adición y eliminación de elementos poco frecuentes.
list : un contenedor de lista doblemente vinculado que admite iteradores bidireccionales, operaciones de inserción y eliminación altas, y es adecuado para escenarios con operaciones frecuentes de inserción y eliminación.
deque : un contenedor de cola de dos extremos que admite el acceso aleatorio, la inserción y la eliminación de la cabeza a la cola, y es adecuado para escenarios que requieren la inserción y eliminación frecuentes de elementos en la cabeza y la cola.
pila : el contenedor de pila, implementado con deque o lista en la capa inferior, solo admite la inserción y eliminación de elementos en la parte superior de la pila, y es adecuado para escenarios que requieren el último en entrar, primero en salir (LIFO).
cola : contenedor de cola, implementado con deque o lista en la capa inferior, solo admite la inserción al final de la cola y la eliminación de elementos al principio de la cola, adecuado para escenarios que requieren primero en entrar, primero en salir (FIFO) .
Priority_queue : contenedor de cola de prioridad, implementado con un montón en la capa inferior, admite la búsqueda rápida y la eliminación de elementos en la parte superior del montón, y es adecuado para escenarios donde los elementos deben procesarse de acuerdo con una determinada prioridad.
conjunto : el contenedor de colección, implementado con un árbol rojo-negro en la capa inferior, admite la inserción, eliminación y búsqueda de elementos, y los elementos se ordenan automáticamente de acuerdo con el valor clave, lo cual es adecuado para escenarios que deben ordenarse de acuerdo con el valor clave y no puede tener elementos duplicados.
mapa : contenedor de mapeo, implementado por un árbol rojo-negro en la capa inferior, admite búsqueda rápida, inserción y eliminación de valores por clave, y los elementos se ordenan automáticamente por valor clave, adecuado para escenarios que deben ordenarse por valor clave y no puede tener llaves duplicadas.
unordered_set : un contenedor de colección implementado por una tabla hash, que admite la inserción, eliminación y búsqueda rápidas de elementos, y no garantiza el orden de los elementos. Es adecuado para escenarios que requieren búsqueda, inserción y eliminación rápidas de elementos sin orden .
unordered_map : un contenedor de mapeo implementado por una tabla hash, que admite búsqueda, inserción y eliminación rápidas de valores por clave, y no garantiza el orden de los elementos. Es adecuado para escenarios que requieren búsqueda, inserción y eliminación rápidas. de pares clave-valor y no requiere orden.