Question 1
Question
???? ?
(???????? ?) En el siguiente código, ¿Qué valor tiene la variable arg tras la ejecución de la función f()?
void f(int *param) {
ㅤparam = 10;
}
int main() {
ㅤint arg = 1;
ㅤf(&arg);
}
Question 2
Question
???? ?
(???????? 2) ¿Cual es el resultado de la ejecución de la siguiente instrucción?
char* const s1 = "ABC";
*s1 = 'X';
cout << s1;
Question 3
Question
???? ?
(???????? 3) ¿A dónde apunta el puntero s1 tras la ejecución de la siguiente instrucción?
const char* s1 ? "ABC";
s1++;
Question 4
Question
???? ?
(???????? 4) Si se realiza herencia public, los miembros private de la clase base:
Answer
-
Son private en la clase derivada
-
No son accesibles en la clase derivada
-
Son public en la clase derivada
-
Son protected en la clase derivada
Question 5
Question
???? ?
(???????? 5) Dada la definición de la clase, ¿Cual de los siguientes códigos es incorrecto para el constructor?
class dummy {
int x, y;
public:
dummy(int, int);
},
Answer
-
dummy::dummy(int i, int j): x(i) {y=j;}
-
Todos son correctos
-
dummy::dummy(int i, int j) {x=i; y=j;}
-
dummy::dummy(int i, int j): x(i), y(j) {}
Question 6
Question
???? ?
(???????? 6) Para definir que un método de la clase puede expandirse como una macro, se utiliza la palabra
reservada
Answer
-
virtual
-
friend
-
inline
-
static
Question 7
Question
???? ?
(???????? 7) ¿Dónde se puede utilizar la clausula friend en el lenguaje C++?
Question 8
Question
???? ?
(???????? 8) Si se realiza herencia protected, los miembros public de la clase base:
Answer
-
No son accesibles en la clase derivada
-
Son protected en la clase derivada
-
Son public en la clase derivada
-
Son private en la clase derivada
Question 9
Question
???? ?
(???????? 9) Dada la definición de la clase, ¿Cual de las siguientes sentencias no se corresponde con una llamada correcta al constructor?
class dummy {
public:
dummy(){};
}
Answer
-
dummy *a = new dummy;
-
dummy a;
-
dummy a();
-
Todas son correctas
Question 10
Question
???? ?
(???????? 10) El código a ejecutar para manejar la ocurrencia de una excepción se encierra en un bloque:
class dummy {
public:
dummy(){};
}
Answer
-
exception
-
catch
-
throw
-
try
Question 11
Question
???? ?
(???????? 11) Las excepciones identificadas en la librería estándar del lenguaje C++ derivan de la clase
Answer
-
exception
-
runtime_error
-
logic_error
-
bad_exception
Question 12
Question
???? ?
(???????? 12) En el lenguaje C++ la ocurrencia de una situación excepcional que requiere un tratamiento especial se invoca con la palabra clave:
Answer
-
catch
-
exception
-
try
-
throw
Question 13
Question
???? ?
(???????? 13) Dada la siguiente definición de plantilla (template), ¿Cual de los siguientes usos de la plantilla es la correcta?
template<class T, int N>
class miVector {
private:
T v[N];
public:
miVector(int n);
};
Answer
-
int N = 5;
miVector<int,5> v(N);
-
int N = 5;
miVector<int,N> v(5);
-
int N = 5;
miVector<int,N> v;
-
int N = 5;
miVector<int,N> v(N);
Question 14
Question
???? ?
(???????? 14) La utilización de plantillas (template) de funciones en el lenguaje C++ permite:
Answer
-
La utilización en el código de la STL (Standard Template Library)
-
Especificar al compilador la forma de crear una familia parametrizada de clases.
-
La declaración de una jerarquía de clases
-
La definición de una familia parametrizada de funciones.
Question 15
Question
???? ?
(???????? 15) ¿Qué métodos deben especificarse en toda plantilla (template)?
Answer
-
Todos los constructores, el destructor y el operador de asignación
-
Un constructor de copia y el operador de asignación
-
No hay que especificar ningún método de forma obligatoria.
-
Un constructor por defecto
Question 16
Question
???? ?
(???????? 16) Los parámetros al utilizar una plantilla (template) en el lenguaje C++ pueden ser:
Answer
-
Cualquier tipo de dato o expresión entera constante
-
Cualquier tipo de dato que se pueda resolver en tiempo de ejecución.
-
Sólo los tipos básicos del compilador
-
Cualquier clase definida por el programador
Question 17
Question
???? ?
(???????? 17) Dada la siguiente definición de clases, ¿qué valor se visualiza en la función main()?
#include <iostream>
class Base {
protected:
int x;
public:
Base() {x = 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada() {y = 10;}
int get() const { return y; }
};
int main() {
const Base* const ptr = new Derivada;
std: :cout << ptr->get();
}
Question 18
Question
???? ?
(???????? 18) Dada la siguiente definición de clases, ¿qué valor se visualiza en la función main()?
#include <iostream>
class Base {
protected:
int x;
public:
Base() {x = 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada() {y = 10;}
int get() const { return y; }
};
int main() {
Base* ptr = new Base;
std: :cout << ptr->get();
}
Question 19
Question
???? ?
(???????? 19) Dada la siguiente definición de clases, ¿qué valor se visualiza en la función main()?
#include <iostream>
class Base {
protected:
int x;
public:
Base() {x = 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada() {y = 10;}
int get() const { return y; }
};
int main() {
const Base* ptr = new Base;
std: :cout << ptr->get();
}
Question 20
Question
???? ?
(???????? 20) Dada la siguiente definición de clases, ¿qué valor se visualiza en la función main()?
#include <iostream>
class Base {
protected:
int x;
public:
Base() {x = 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada() {y = 10;}
int get() const { return y; }
};
int main() {
Base* const ptr = new Derivada;
std: :cout << ptr->get();
}
Question 21
Question
???? ?
(???????? 1) Cuál de las siguientes afirmaciones es correcta en una tabla Hash o tabla de dispersión.
Answer
-
Hay tablas donde nunca se puede producir un desbordamiento.
-
Pueden aparecer sinónimos sin producir colisión.
-
Al insertar un valor solo se puede producir un desbordamiento.
-
No se puede dar una colisión sin desbordamiento.
Question 22
Question
???? ?
(???????? 2) ¿Cuándo se usan los métodos de exploración en una tabla de dispersión?
Answer
-
Cuando hay colisión y desbordamiento
-
Cuando hay colisión pero no desbordamiento
-
Cuando no hay colisión ni desbordamiento
-
Cuando hay desbordamiento pero no colisión
Question 23
Question
???? ?
(???????? 3) Las operaciones más habituales en las tablas de dispersión son:
Answer
-
La búsqueda y la inserción
-
La inserción y la ordenación
-
La inserción y la eliminación
-
La búsqueda y eliminación
Question 24
Question
???? ?
(???????? 4) Las tablas de dispersión se pueden implementar
Answer
-
con un array de listas pero no con un array de arrays
-
con un array de arrays pero no con un array de listas.
-
con una lista de arrays o lista de listas.
-
con un array de listas o array de arrays
Question 25
Question
???? ?
(???????? 5) Cual de las siguientes afirmaciones sobre la búsqueda binaria es cierta.
Answer
-
sólo se puede aplicar si el tamaño de la secuencia es par
-
sólo se puede aplicar si la secuencia está ordenada
-
es menos eficiente que la búsqueda secuencial.
-
es casi tan eficiente como la búsqueda secuencia
Question 26
Question
???? ?
(???????? 6) Una búsqueda secuencial primaria sobre una secuencia de números,
Answer
-
es más rápida si los elementos son enteros.
-
es más rápida si los elementos más buscados están al principio de la secuencia
-
es más rápida si los elementos están ordenados
-
es más rápida si los elementos son positivos.
Question 27
Question
???? ?
(???????? 7) Cuál de las siguientes afirmaciones es correcta en una tabla Hash o tabla de dispersión
Answer
-
Al insertar un valor sólo se puede producir un desbordamiento
-
Se puede dar una colisión sin desbordamiento.
-
Pueden aparecer sinónimos sin producir colisión.
-
No hay tablas donde nunca se puede producir un desbordamiento
Question 28
Question
???? ?
(???????? 8) Para realizar una búsqueda binaria los valores de los elementos de la secuencia:
Question 29
Question
???? ?
(???????? 9) Cuál de los siguientes elementos influye más en el tiempo medio empleado en una búsqueda en una
tabla Hash o tabla de dispersión
Question 30
Question
???? ?
(???????? 10) Las tablas de dispersión se pueden implementar
Answer
-
con un array de listas pero no con una lista de arrays
-
con un array de listas pero no con un array de arrays
-
con una lista de arrays pero no con un array de listas
-
con una lista de arrays pero no con una lista de listas.
Question 31
Question
???? ?
(???????? 1) Los métodos de ordenación por descomposición más eficientes tienen complejidad:
Answer
-
$0( n )$
-
$0(n²)$
-
$0(n{¹˒³})$.
-
$0(n \ log n)S
Question 32
Question
???? ?
(???????? 2) Cual de los siguientes es un método de ordenación por descomposición?
Answer
-
el método de ordenación por mezcla.
-
el método de la sacudida.
-
el método de ordenación por intercambio.
-
el método de ordenación por inserción.
Question 33
Question
???? ?
(???????? 3) Los métodos de ordenación más eficientes tienen complejidad:
Answer
-
$O( n{¹˒³} )$.
-
$O( n )$.
-
$O( n \log n )$.
-
$O( n² )$.
Question 34
Question
???? ?
(???????? 4) Los métodos usuales de ordenación ordenan de menor a mayor pero:
Answer
-
Se pueden modificar para que ordenen de mayor a menor pero son mucho más lentos
-
Solo sirven para ordenar de menor a mayor
-
Se pueden modificar fácilmente para que ordenen de mayor a menor y son igual de rápidos
-
Algunos no se pueden adaptar para ordenar de mayor a menor.
Question 35
Question
???? ?
(???????? 5) Los incrementos del método de ordenación por incrementos decrecientes tienen que:
Question 36
Question
???? ?
(???????? 6) La sucesión de incrementos a utilizar en el método de ordenación por incrementos decrecientes tiene
que cumplir las siguientes condiciones
Question 37
Question
???? ?
(???????? 7) Es un método de ordenación por descomposición
Answer
-
el método de Quick Sort.
-
el método de BinSort.
-
el método de Shell Sort.
-
el método de Shake Sort
Question 38
Question
???? ?
(???????? 8) Los métodos de ordenación
Answer
-
Son mejores para ordenar de mayor a mayor que de menor a mayor
-
Sólo sirven para ordenan de menor a mayor
-
Son mejores para ordenar de menor a mayor que de mayor a menor
-
Son equivalentes para ordenar de menor a mayor que de mayor a menor
Question 39
Question
???? ?
(???????? 9) Los niveles de recursividad máximo que alcanzan los métodos de ordenación por descomposición
QuickSort y MergeSort con distintas secuencias de tamaño 1000
Answer
-
Es menor con el QuickSort que con el MergeSort.
-
Es mayor con el QuickSort que con el MergeSort.
-
Es siempre el mismo con ambos métodos.
-
Dependiendo de la secuencia es unas veces mayor con uno y otras con el otro.
Question 40
Question
???? ?
(???????? 10) El pivote del método de ordenación QuickSort
Answer
-
No puede coincidir con ningún valor de la secuencia a ordenar
-
Tiene que ser un número positivo
-
No puede ser un número entero.
-
No puede ser mayor que los valores de todos los elementos de la secuencia
Question 41
Question
???? ?
(???????? 1) El recorrido en preorden de los nodos de un árbo! AVL puede ser
Answer
-
2 3 1 5 4
-
4 3 1 2 5
-
3 2 1 5 4
-
1 2 4 5 3
Question 42
Question
???? ?
(???????? 2) En un árbol AVL de más de 5 de nodos ocurre siempre que
Answer
-
a diferencia del número de nodos en los dos sub-árboles es menor o igual a uno
-
el elemento de menor valor de todo el árbol está en el subárbol izquierdo.
-
al menos la mitad de los nodos tiene dos hijos
-
los dos subárboles deben tener la misma profundidad o altura.
Question 43
Question
???? ?
(???????? 3) En los árboles AVL tiene que verificarse que
Answer
-
La diferencia de altura entre los subárboles derecho e izquierdo es 0, -1 o +1
-
La diferencia entre el número de nodos de los dos subárboles de cada rama es 0, -1 o +1
-
La diferencia de altura entre el subárbol derecho e izquierdo de cada rama es 0, -1 o +1
-
La diferencia entre el número de nodos de los subárboles derecho e izquierdo es 0, -1 o +1
Question 44
Question
???? ?
(???????? 4) La altura de un árbol binario
Answer
-
Equivale al numero de nodos hojas del árbol binario
-
Es el orden del logaritmo del numero de nodos
-
Equivale al numero total de nodos del árbol binario
-
Equivale a la profundidad del árbol binario
Question 45
Question
???? ?
(???????? 5) El preorden de un árbol AVL
Answer
-
4 1 2 3 6 5
-
4 2 1 3 5 6
-
5 2 3 6 1 4
-
2 3 4 5 6 1
Question 46
Question
???? ?
(???????? 6) Eliminar un nodo en un árbol AVL
Answer
-
Se puede producir desbalanceo en ambos hijos del nodo a eliminar
-
Se puede producir desbalanceo en los descendientes del hermano del nodo a eliminar
-
Se puede producir desbalanceo en le hermano del nodo a eliminar
-
Se puede producir desbalanceo en los ascendentes del nodo a eliminar
Question 47
Question
???? ?
(???????? 7) El recorrido en postorden de los nodos de un árbol AVL puede ser
Answer
-
1 2 4 5 3
-
2 3 1 5 4
-
4 3 1 2 5
-
1 2 3 4 5
Question 48
Question
???? ?
(???????? 7) El recorrido en postorden de los nodos de un árbol AVL puede ser
Answer
-
1 2 4 5 3
-
2 3 1 5 4
-
4 3 1 2 5
-
1 2 3 5 4
Question 49
Question
???? ?
(???????? 8) La altura de un árbol binario (contando con la raíz con altura 1)
Answer
-
Es del orden del logaritmo (e base 2) del numero de nodos
-
Es el logaritmo (en base 2) del numero de nodos
-
Es menor que el logaritmo (en base 2) del numero de nodos
-
Es mayor que el logaritmo (en base 2) del numero de nodos
Question 50
Question
???? ?
(???????? 9) En un árbol binario
Answer
-
Cada nodo tiene como máximo grado 2
-
Cada nodo tiene como mínimo grado 2
-
Cada nodo tiene como máximo grado 1
-
Cada nodo tiene como mínimo grado 1
Question 51
Question
???? ?
(???????? 10) En relación a los árboles binarios
Answer
-
Todos los nodos tienen descendientes
-
Los árboles binarios pueden ser vacíos
-
Todos los nodos tienen siempre dos descendientes
-
Todos los nodos tienen un único antecesor
Question 52
Question
???? ?
(???????? 11) Al eliminar un nodo en un árbol AVL
Answer
-
Se puede producir desbalanceo en ambos hijos del nodo a eliminar
-
Se puede producir desbalanceo en el hermano del nodo a eliminar
-
Se puede producir desbalanceo en los descendientes del nodo a eliminar
-
Se puede producir desbalanceo en los descendientes del hermano del nodo a liminar
Question 53
Question
???? ?
(???????? 12) En un árbol AVL de un número impar y mayor que 3 de nodos
Answer
-
los dos subárboles deben tener el mismo número de nodos
-
el elemento de mayor valor está siempre en el subárbol derecho
-
los nodos que no son hojas tienen dos hijos
-
los dos subárboles deben tener la misma profundidad
Question 54
Question
???? ?
(???????? 13) El recorrido en postorden de los nodos de un árbol AVL puede ser
Answer
-
2 3 1 5 4
-
1 2 5 4 3
-
1 4 5 3 2
-
1 5 4 3 2
Question 55
Question
???? ?
(???????? 14) Al eliminar un nodo en un árbol AVL
Answer
-
No se produce ningún desbalanceo en los descendientes de su hermano
-
No se produce desbalanceo en ninguno de sus ascendientes
-
No se produce desbalanceo en ninguno de sus descendientes
-
No se produce ningún desbalanceo
Question 56
Question
???? ?
(???????? 15) La condición de equilibrio en árboles AVL definida de forma recursiva
Answer
-
La diferencia de altura entre el subárbol derecho e izquierdo es a lo sumo una unidad
-
El número de nodos del árbol izquierdo debe ser a lo sumo uno más que el derecho
-
La diferencia entre el número de nodos de los dos subárboles debe ser a lo sumo una unidad
-
La diferencia entre la altura de un nodo y cualquiera de sus hijos es 1