Sunteți pe pagina 1din 6

CUESTIONARIO DE ESTRUCTURA DE DATOS

1. Es una colección de datos que se caracterizan por la FORMA en que estos se ORGANIZAN,
y por las OPERACIONES que se pueden definir sobre dichos datos.
A. Array o arreglos
B. Estructura de datos
C. Pilas y colas
D. Variables primitivas

2. Se caracteriza porque su tamaño es conocido a priori (antes de la ejecución del programa). En


consecuencia, en el código del programa se declaran variables de tipo estático y en la compilación
se reserva en memoria el espacio necesario para ellas.
A. Array o arreglos
B. Estructura de datos
C. Pilas y colas
D. Variables primitivas

3. No tienen un tamaño predefinido y la memoria utilizada para almacenarlas se reserva o libera en


tiempo de ejecucón, según se requiera.
A. Array o arreglos
B. Estructura de datos dinámicas
C. Pilas y colas
D. Estructura de datos estáticas

4. Si queremos crear un array unidimensional (vector) llamado valores de 10 números de coma


flotante en java podemos utilizar el siguiente código

A. int[ ] valores = new int[10];


B. double[ ] valores = new int[10];
C. double valores[ ]= new double[10];
D. double[ ] valores = new double[9];

5. Si ejecutamos el siguiente código


public class Ejemplo1 {
public static void main(String[] args) {
int numeros = {10, 15, 3, 80, 65, 74, 1, 55, 35, 44, 9};
int n = numeros[0];
for(int i=1; i<numeros.length;
i++){ if(numeros[i] <
n)
n = numeros[i];
}
System.out.println(n);
}
}
La salida o resultado es:
A. 3
B. 80
C. 1
D. 9

6. Si quisiéramos crear una estructura para almacenar los siguientes datos cuál sería el código más
adecuado Ventas semanales del mes de enero
DIA 1 DIA 2 DIA 3 DIA 4 DIA 5 DIA 6
SEMANA 1 1500 2500 3000 1750 3000 2650
SEMANA 2 2500 3000 3500 1950 4000 3200
SEMANA 3 3000 2850 1800 2000 3500 6500
SEMANA 4 3250 6000 2750 3000 6500 2500

A. String[ ] ventas = new String[24];


B. int[ ] ventas = new int[24];
C. int[ ][ ] ventas = new float[6][4];
D. float[ ][ ] ventas = new float[6][4];

7. Hace referencia a una variable cuyo contenido es la dirección en memoria de otra variable
(nodo) que realmente contiene el propio dato que se emplea en el programa.
A. Variable primitiva
B. Puntero o apuntador
C. Dirección dinámica
D. Vector dinámico

8. La siguiente figura representa una estructura de datos llamada

A. Vector
B. Matriz
C. Lista enlazada
D. Arbol

9. Llamadas a subprogramas, tratamiento de expresiones aritméticas, ordenación rápida, son


algunas de las aplicaciones de estas estructuras:
A. Colas
B. Pilas
C. Arboles
D. Vectores

10. La particularidad de esta estructura de datos es el hecho de que sólo podemos


acceder al primer y al último elemento de ella. Así mismo, los elementos sólo se pueden
eliminar por el principio y sólo se pueden añadir por el final.

A. Colas
B. Pilas
C. Arboles
D. Vectores

11. La siguiente figura representa un tipo particular de estructura de datos llamada:


A. Colas
B. Pilas
C. Arboles
D. Vectores

13. Observa la figura:

Sabiendo que Matriz[columna][fila], si quisiéramos mostrar los datos resaltados deberíamos


utilizar el siguiente código:

A. System.out.print(Matriz[3][5]); System.out.print(Matriz[3][6]);
B. System.out.print(Matriz[5][3]); System.out.print(Matriz[6][3]);
C. System.out.print(Matriz[2][4]); System.out.print(Matriz[2][5]);
D. System.out.print(Matriz[4][2]); System.out.print(Matriz[5][2]);
14. Método de ordenamiento que resulta ser uno de los más sencillos de implementar:

int[] matrix;
int temp;
for(int i=1;i < matrix.length;i++){
for (int j=0 ; j < matrix.length- 1;
j++){ if (matrix[j] > matrix[j+1]){
temp = matrix[j];
matrix[j] =
matrix[j+1];
matrix[j+1] = temp;
}
}
}

A. Burbuja
B. Inserción
C. Selección
D. Shellsort

15. Son operaciones básicas con pilas


A. Poner nodo, vaciar pila, llenar pila
B. Push, pop, vacía y llena.
C. Push, crash, delete, home
D. Apilar, vaciar pila, llenar pila

16. Diga que hace el siguiente código


int[] ventasA=new int[12];
int[] ventasB=new int[12];
for(int i=0; i<12; i++){
VentasB[i]=VentasA[i] * 0.1;
}

A. Pasa los valores de VentasA hacia VentasB


B. Pasa los valores de VentasB a VentasA
C. Pasa a VentasB el 10% de VentasA
D. Pasa a VentasA el 10% de VentasB

17. Teniendo en cuenta la siguiente figura se puede concluir que:


A. Tras la operación el 5 queda aislado y no accesible
B. Tras la operación el 5 se puede recuperar con raíz = raíz.anterior
C. Se está representando una lista doblemente enlazada
D. Se trata de un árbol binario
18. Si tenemos el vector A, y una variable t que almacena el valor 5.
A

Al ejecutar el algoritmo que se presenta a


continuación: El resultado mostrado al finalizar
es:

A. Se encontró el elemento buscado en la posición 5


B. No se encontró el elemento
C. El elemento se encuentra en la posición 5
D. Tanto A como C
19. Teniendo en cuenta lo siguiente

Podemos decir que el algoritmo anterior permite:


A. Crear una lista enlazada de P elemento
B. Buscar un elemento en una lista enlazada
C. Mostrar los elementos de una lista
D. Ordenar los elementos de una lista enlazada

20. El siguiente algoritmo permite:

A. Meter un dato x en la pila


B. Extraer un dato x de la pila
C. Recorrer una pila
D. Eliminar el primer dato de una pila

PARTE 2: Desarrollar los siguientes programas con Java

1. Hacer un programa java que almacene 20 números enteros introducidos por teclado en un
vector, luego muestre los mismos números indicando al lado de cada uno si es positivo o
negativo.
2. Hacer un programa java que llene una matriz de enteros de 4 filas y 4 columnas con datos
introducidos por teclado y luego muestre la diagonal principal.
3. Hacer un programa java que lea una cadena de caracteres y luego devuelva la misma cadena con los
caracteres invertidos, es decir, si introducimos ABC123 debe devolver 321CBA. Hacer esto utilizando
una estructura de pila.
CLASE PRINCIPAL
1. public static void main(String[] args) {
2. palabra p = new palabra();
3. P.invertir_palabra("francisco");
4.
5. CLASE # 2
6. import java.util.Stack;
7. public class palabra {
8. }
9. private Stack<Character>pila = new Stack<Character>();
10. public void invertir_palabra(String cadena)
11. {
12. char letras[] = cadena.toCharArray();
13. for(in i =0;i<letras.length;i++)
14. }
15. pila.push(letras)[i];
16. System.out.println("ingresando caracter "+letras[i]);
17. }
18. while(!pila.empty())
19. }
20. System.out.println(pila.pop());
21. }
22.
23.

4. Hacer un programa java que simule la fila de un cajero bancario. Tomando en cuenta lo siguiente:

* Cada vez que se presione la tecla P se genera una persona que llega a la fila.
* Para cada persona que llega se debe generar un número consecutivo que indica la posición en la fila;
generar aleatoriamente el tipo de transacción, es decir, si es retiro o consignación, y el valor de la
transacción.
* Cada vez que se presione la tecla A(Atender) es atendida la persona que está al frente de la fila, por lo
que sale de la misma.
* Al presionar la tecla E(Estado) se debe mostrar los datos de las personas que aún están en fila, es
decir, el número consecutivo, el tipo de transacción y el valor de la misma.
* Se debe terminar el programa presionando la tecla T y mostrar el total consignado y el total retirado.

S-ar putea să vă placă și