Ejercicio 2

Ejercicio 2

de Florencia Carle Vitale -
Número de respuestas: 3

La ultima parte pide hacer una estructura estatica para una cola acotada.

Pense en un array con tope pero ahi no se como haria todos lo procedimientos y funciones O(1).

Por otro lado, cuando quise hacer el array con tope me di cuenta que no me queda claro como hacerlo. Si bien se que tengo que hacer un struct con el array y el tope no se que tamaño darle al arreglo o en que basarme para darle el tamaño

En respuesta a Florencia Carle Vitale

Re: Ejercicio 2

de Carlos Luna -

Hola.

Se puede usar un arreglo con un manejo circular para implementar una cola acotada. En vez de usar un tope (como en el caso de una pila), utilizás dos posiciones: inicio y fin. Se inserta sobre fin y se elimina por inicio. Que sea circular implica que tanto para insertar como para eliminar se incrementa en uno ya sea fin o inicio, según corresponda, pero si se está en el última posición del arreglo, se vuelve a 0 (se puede usar la operación % o simplemente con un if).

Se puede inicializar inicio y fin en 0, por ejemplo. Conviene llevar un contador en la representación para distinguir si la cola está vacía o está llena.

Saludos, Carlos

En respuesta a Carlos Luna

Re: Ejercicio 2

de Florencia Carle Vitale -
Muchas gracias, entiendo.

Mi otra duda es que no me doy cuenta en el momento de crear el arreglo que

hago int A[n] que valor darle a n, le doy un valor aleatorio pero bastante

grande? Me queda medio en el aire ese tema



El lun., 18 de mayo de 2020 19:27, Carlos Luna (vía FING) <
En respuesta a Florencia Carle Vitale

Re: Ejercicio 2

de Matias Richart -
Hola.

Tenés dos opciones.
Puede ser que la cota del tamaño de TAD venga como un parámetro de la operación constructora y esa cota es la que usas para crear el arreglo.
Otra opción puede ser que el tamaño sea una constante del programa. En este caso, cambiar el tamaño implicaría tener que modificar el código.

Saludos