option
Cuestiones
ayuda
daypo
buscar.php

AAED ESTRUCTURAS

COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del Test:
AAED ESTRUCTURAS

Descripción:
Intento desesperado de aprobar la teoría de AAED, UCA Puerto Real

Fecha de Creación: 2026/01/29

Categoría: Otros

Número Preguntas: 2

Valoración:(0)
COMPARTE EL TEST
Nuevo ComentarioNuevo Comentario
Comentarios
NO HAY REGISTROS
Temario:

Define una estructura de datos basada en el vector circular para almacenar una bicola de valores de tipo T y escribe el código de las operaciones: void BicolaPopFin(Bicola B) y void BicolaPushInicio(T x, Bicola B). class bicola { public: ·······bicola(size_t tmax); ·······void BicolaPopFin(); ·······void BicolaPushInicio(const T& x); private: ·······T *elemento; ·······int tmax,lmax; ·······int inicio,fin; } Bicola(size_t tmax){ ·······elemento(new T[tmax+1]); ·······lmax = tmax+1: ·······inicio = 0; ·······fin = tmax; } void BicolaPopFin(){ ·······assert(!vacia()); ·······fin = (fin - 1 + lmax) % lmax; } void BicolaPushInicio(const T& x){ ·······assert(!llena()); ·······elemento[inicio] = x; ·······inicio = (inicio - 1 + lmax) % lmax; }. class bicola { public: ·······bicola(size_t tmax); ·······void BicolaPopFin(); ·······void BicolaPushInicio(const T& x); private: ·······T *elemento; ·······int tmax,lmax; ·······int inicio,fin; } Bicola(size_t tmax){ ·······elemento(new T[tmax+1]); ·······lmax = tmax+1; ·······inicio = 0; ·······fin = tmax; } void BicolaPopFin(){ ·······assert(!vacia()); ·······fin = (fin + 1) % lmax; } void BicolaPushInicio(const T& x){ ·······assert(!llena()); ·······elemento[inicio] = x; ·······inicio = (inicio - 1 + lmax) % lmax; }. class bicola { public: ·······bicola(size_t tmax); ·······void BicolaPopFin(); ·······void BicolaPushInicio(const T& x); private: ·······T *elemento; ·······int tmax,lmax; ·······int inicio,fin; } Bicola(size_t tmax){ ·······elemento(new T[tmax]); ·······lmax = tmax+1: ·······inicio = 0; ·······fin = tmax; } void BicolaPopFin(){ ·······assert(!vacia()); ·······fin = (fin - 1 + lmax) % lmax; } void BicolaPushInicio(const T& x){ ·······assert(!llena()); ·······elemento[fin] = x; ·······inicio = (inicio - 1 + lmax) % lmax; }. class bicola { public: ·······bicola(size_t tmax); ·······void BicolaPopFin(); ·······void BicolaPushInicio(const T& x); private: ·······T *elemento; ·······int tmax,lmax; ·······int inicio,fin; } Bicola(size_t tmax){ ·······elemento(new T[tmax+1]); ·······lmax = tmax+1: ·······inicio = 1; ·······fin = tmax; } void BicolaPopFin(){ ·······assert(!vacia()); ·······fin = (fin - 1) % lmax; } void BicolaPushInicio(const T& x){ ·······assert(!llena()); ·······elemento[inicio] = x; ·······inicio = (inicio - 1 + lmax) % lmax; }.

Estructura de datos bicola e implementar las operaciones void pop_fin() y void push_frente(const T& e). template <typename T> class Bicola { public: ·······explicit Bicola(size_t n) : elementos(new T[n + 1]), Lmax(n + 1), inicio(0), fin(0) {} ·······~Bicola() { delete[] elementos; } ·······bool vacia() const { return inicio == fin; } ·······bool llena() const { return (fin + 1) % Lmax == inicio; } ·······void push_frente(const T& e) { ··············assert(!llena()); ··············elementos[inicio] = e; ··············inicio = (inicio - 1 + Lmax) % Lmax; ·······} ·······void pop_fin() { ··············assert(!vacia()); ··············fin = (fin - 1 + Lmax) % Lmax; ·······} private: ·······T* elementos; ·······int Lmax; ·······int inicio, fin; };. template <typename T> class Bicola { public: ·······explicit Bicola(size_t n) : elementos(new T[n]), Lmax(n + 1), inicio(0), fin(0) {} ·······~Bicola() { delete[] elementos; } ·······bool vacia() const { return inicio == fin; } ·······bool llena() const { return (fin + 1) % Lmax == inicio; } ·······void push_frente(const T& e) { ··············assert(!llena()); ··············elementos[inicio] = e; ··············inicio = (inicio + 1) % Lmax; ·······} ·······void pop_fin() { ··············assert(!vacia()); ··············fin = (fin - 1 + Lmax) % Lmax; ·······} private: ·······T* elementos; ·······int Lmax; ·······int inicio, fin; };. template <typename T> class Bicola { public: ·······explicit Bicola(size_t n) : elementos(new T[n + 1]), Lmax(n + 1), inicio(0), fin(0) {} ·······~Bicola() { delete elementos; } ·······bool vacia() const { return inicio == fin; } ·······bool llena() const { return (fin + 1) % Lmax == inicio; } ·······void push_frente(const T& e) { ··············assert(!llena()); ··············elementos[inicio] = e; ··············inicio = (inicio - 1 + Lmax) % Lmax; ·······} ·······void pop_fin() { ··············assert(!vacia()); ··············fin = (fin + 1) % Lmax; ·······} private: ·······T* elementos; ·······int Lmax; ·······int inicio, fin; };. template <typename T> class Bicola { public: ·······explicit Bicola(size_t n) : elementos(new T[n + 1]), Lmax(n + 1), inicio(0), fin(0) {} ·······~Bicola() { delete[] elementos; } ·······bool vacia() const { return inicio = fin; } ·······bool llena() const { return (fin + 1) % Lmax == inicio; } ·······void push_frente(const T& e) { ··············assert(!llena()); ··············elementos[fin] = e; ··············inicio = (inicio - 1 + Lmax) % Lmax; ·······} ·······void pop_fin() { ··············assert(!vacia()); ··············fin = (fin - 1 + Lmax) % Lmax; ·······} private: ·······T* elementos; ·······int Lmax; ·······int inicio, fin; };.

Denunciar Test