Matriz de colas en C++
- Matriz de colas en C++
- Operaciones fundamentales para la estructura de datos de cola en C++
- Pasos para implementar una matriz de colas con tamaño variable en C++
Esta sección discutirá una matriz global de C++ de colas con tamaños variables.
Matriz de colas en C++
Una cola es una estructura de datos lineal que permite la inserción de nuevos elementos en un extremo, llamado cabeza, y la extracción de elementos en el otro extremo, llamado cola. Las colas se utilizan a menudo para implementar colas de prioridad (primero en entrar, primero en salir) (FIFO).
La matriz global de colas de C++ se utiliza para almacenar un número arbitrario de colas. El tamaño de cada cola se puede establecer cuando se crea la matriz global.
Esto hace posible crear una matriz con diferentes tamaños y capacidades, que se puede utilizar para almacenar diferentes tipos de datos.
Esta estructura de datos es útil para almacenar datos en los que hay muchos elementos, pero estos elementos no se necesitan todos al mismo tiempo. Por ejemplo, si desea almacenar una lista de nombres pero solo necesita buscar nombres ocasionalmente, este sería un buen lugar para su lista.
Operaciones fundamentales para la estructura de datos de cola en C++
La estructura de datos de la cola admite las siguientes operaciones:
EnQueue
: Esto inserta un nuevo elemento en la cola. Cuando se agrega un elemento a la cola, siempre se agrega al final.DeQueue
: este método elimina un elemento de la cola. Un artículo siempre se retira o se quita de la cola desde el principio de la cola.isEmpty
: Esto determina si la cola está vacía.isFull
: determina si la cola está llena.
Pasos para implementar una matriz de colas con tamaño variable en C++
-
Defina el tamaño de la cola especificando el número máximo de elementos que puede contener.
-
Cree una matriz que almacenará los elementos de la cola.
-
Inicialice la matriz para contener un número predefinido de ranuras vacías.
-
Agregue elementos al final de la matriz llamando a
Enqueue()
con un valor y un índice. -
Elimine elementos del frente de la matriz llamando a
Dequeue()
con un valor y un índice.
Ejemplo:
#include <bits/stdc++.h>
using namespace std;
struct Queue {
int start, stop, eon;
int* queue;
Queue(int y) {
start = stop = 0;
eon = y;
queue = new int;
}
void queueEnqueue(int ghm) {
if (eon == stop) {
cout << endl << "This Queue is not empty" << endl;
return;
} else {
queue[stop] = ghm;
stop++;
}
return;
}
void demoSam() {
int x;
for (x = start; x < stop; x++) {
cout << queue[x];
}
return;
}
};
int main(void) {
Queue q(3);
q.demoSam();
q.queueEnqueue(6);
q.queueEnqueue(3);
q.queueEnqueue(12);
q.demoSam();
q.queueEnqueue(13);
q.demoSam();
return 0;
}
Haga clic aquí para verificar el funcionamiento del código como se mencionó anteriormente.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook