priority queue stl
Una mirada en profundidad a la cola de prioridad en STL.
En esta serie de C ++ explícito, hemos visto pilas y colas en el tutorial anterior.
En este tutorial, discutiremos otro contenedor especializado en STL, es decir, la cola de prioridad.
mejor removedor de software espía para Windows 10
Una cola de prioridad es un adoptador de contenedores en STL. Una cola de prioridad es un contenedor que tiene los elementos dispuestos en orden no decreciente de manera que el primer elemento es siempre el elemento más grande de la cola.
=> Visite aquí para ver la lista completa de tutoriales de C ++.
Lo que vas a aprender:
comandos de script de shell de Unix con ejemplos
Visión general
A diferencia de la cola normal que empuja y abre el elemento según el orden FIFO, la cola de prioridad tiene elementos en orden no decreciente y tiene una prioridad (orden fijo) para cada elemento
La cola de prioridad se puede ver de manera similar a una estructura de datos de 'montón máximo' en C ++.
La sintaxis general de la cola de prioridad es:
|_+_|Entonces, si queremos definir una cola de prioridad de tipo int, podemos definirla de la siguiente manera:
|_+_|Cola de prioridad: operaciones
Veamos las operaciones admitidas por la cola de prioridad a continuación.
- Empujar: Inserta un elemento en la cola de prioridad. Al insertar elementos, se mantiene la prioridad de los elementos.
- Pop: Elimina el elemento superior de la cola de prioridad.
- Cima: Devuelve el elemento más alto en la cola de prioridad, es decir, el elemento más grande en la cola de prioridad.
- Vacío: Comprueba si la cola de prioridad está vacía.
- Tamaño: Devuelve el tamaño de la cola de prioridad, es decir, el número de elementos en la cola de prioridad.
Escribamos un programa para demostrar el uso de estas funciones / operaciones.
|_+_|Producción:
Cola de prioridad después de insertar el valor 60: 60 3 1
que es la llave de seguridad para wifi
Cola de prioridad después de insertar el valor 5: 60 5 3 1
La cola de prioridad mypq es: 60 10 5 3 1
mypq.size (): 5
mypq.top() : 60
mypq.pop (): 10 5 3 1
Verifique la salida cuidadosamente para comprender la cola de prioridad. Primero, presionamos los valores 1, 3, 60 como se muestra en la primera línea de la salida. Luego empujamos el valor 5 en la cola de prioridad. Después de eso, se muestra la cola de prioridad. Tenga en cuenta que aunque el valor 5 se inserta después de 60, la parte superior de la cola de prioridad sigue siendo 60.
Nuevamente presionamos otro valor 10 y aún así, la parte superior de la cola de prioridad es 60. Esto se debe a que al presionar elementos, el orden o la prioridad de los elementos se mantiene de manera que el elemento más grande siempre está en la parte superior.
Conclusión
Se trataba de la implementación de la cola de prioridad en STL. En nuestro próximo tutorial, aprenderemos más sobre contenedores STL como map y set.
=> Haga clic aquí para ver la serie de capacitación Absolute C ++.