Вы находитесь на странице: 1из 4

TALLER ESTRUCTURA DE DATOS

Reglas:

- Una persona tiene un valor y un apuntador.


- Solo algunos apuntadores tienen nombre
- Los apuntadores con nombre pueden estar apuntado a cualquier elemento de la lista.
- Para ubicarse en cualquier elemento de la lista debe desplazarse desde el comienzo.
- El comienzo esta indicado por un apuntador con nombre

Las instrucciones sobre los apuntadores son:

Sea Cabeza el apuntador con nombre al primer elemento de la lista. En las instrucciones se usa
Auxiliar y Cabeza, pero puede ser cualquier otro nombre, temporal, auxiliar1, auxiliardos, ultimo,
entre otros.

INSTRUCCIÓN SIGNIFICADO
Auxiliar = Cabeza Auxiliar queda apuntado a donde apunta la cabeza
Auxiliar.siguiente == nulo verdadero si no esta apuntando a nada
Auxiliar = Auxiliar.siguiente Auxiliar queda ubicado en el siguiente de Auxiliar
X=Auxiliar.valor en X queda el valor de Auxiliar.valor
Auxiliar.valor=10 guarda el valor de 10 en Auxiliar.valor
Auxiliar == Cabeza devuelve verdadero si ambos apuntan al mismo elemento
Auxiliar.siguiente = Cabeza pone a apuntar el siguiente de Auxiliar a donde apunta cabeza
Auxiliar.siguiente=nulo Pone a Auxiliar.siguiente a apuntar a nulo.

Usando las instrucciones anteriores resolver los siguientes ejercicios (recuerden que pueden usar
while, if, sout,variables, for, …)

1- Ubicar un apuntador llamado MAYOR en el mayor elemento de la lista


2- Decir si una lista esta ordenada de menor a mayor
3- Multiplicar todos los elementos de una lista por un valor X
4- Invertir una lista
5- Calcular el promedio de una lista
6- Convertir la lista en una lista circular
7- Rotar una lista
8- Intercambiar el elemento mayor de una lista con el primer elemento
9- Intercambiar el primer y ultimo valor de una lista
10- Decir si la lista es palindrome
11- Intercambiar el elemento a con el elemento b de una lista. Donde a y b son posiciones en la
lista.
12- Convertir una lista en lista circular
13- Eliminar elementos repetidos de una lista
14- Calcular la moda, la media y la mediana de una lista
15- Calcular el promedio entre el elemento menor y el mayor de una lista
16- Dado un numero x, colocar los números menores o iguales a x al lado izquierdo y los mayores
al lado derecho.
17- Dados dos números a y b pertenecientes a una lista. crear una nueva lista con los elementos
que están entre a y b incluyéndolos.

Crear una lista que se comporte como un conjunto y realizar las operaciones de

1- Agregar elemento
2- Eliminar elemento
3- Operación de pertenencia

Usando dos listas como conjuntos realizar las operaciones


- Intersección
- Union
- Diferencia
- Producto Cartesiano

Usando dos listas como si fueran arreglos

- Sumar dos listas


- Multiplicar la lista por un valor x
- Fusionar dos listas ordenadas
PROYECTO
sistema de colas en un banco

en un banco se pueden hacer n-tramites y cada tramite esta descrito con


- un valor minimo de tiempo de atencion
- un valor maximo de tiempo de atencion
- una ganancia por el tramite

para las colas se tiene


- minimo una cola
- maximo 10 colas
- valor diario a pagar al cajero de la cola
- tramites permitidos en la cola

Sea
- Ci la cantidad de usuarios de la cola i
- cada usuario tiene un tramite a realizar.

Se debe simular el sistema de colas revisando su comportamiento de acuerdo a


los siguientes datos

- numero de colas
- numero de tramites
- numero de horas de atencion de la cola
- tiempo entre transiciones
- periodicidad de llegada de usuarios en cada transicion

ejemplo
3 colas (primera con tramite 1, 2 y 3 segunda cola con tramites 1, 2 y 3 tercera cola con
tramites 4 y 5)
5 tramites
2 horas de atención por cada cola
tiempo de transicion 10 minutos
periodicidad de llegada de usuarios entre 0 y 10 usuarios

calcular gastos y ganancias por cola.


A cada usuario asignarle de manera automática una cola de acuerdo a su tramite y el largo de
la cola.
Ejemplo de ejercicio

Ubicar un apuntador llamado MAYOR en el elemento mayor de la lista

PEDRO = CABEZA
MAYOR=CABEZA

While (PEDRO!=nulo){
If (MAYOR.Valor<PEDRO.Valor)
MAYOR = PEDRO;
PEDRO = PEDRO.Siguiente
}

Вам также может понравиться