Está en la página 1de 2

Caracas, 12 de Junio de 2020

Asesorías: Algoritmos y Programación 2

Ejercicios propuestos de listas

1) Dada una lista simple:

a) Dada un lista simple deje los primos al inicio, los pares en el medio y los impares al
final.

Condición: Si un número es primo va al fondo, sea par o impar

b) Dada una lista simple compacte sus valores hasta alcanzar números de 5 dígitos en
cada elemento, sin usar listas auxiliares. (Es el más complejo)

Ejemplo:
Lista→ [432] → [43] → [3210] → [87] → [33] → [210] → NULL
Lista Final → [43243] → [32108] → [73321] → [0]→ NULL

Por cierto fíjense que el dato que contenía el número en rojo no está.

c) Dada una lista simple borre sólo los números primos y capicuas (Ambos a la vez) y
dupliquen los pares (menos el 2 que lo borran).

Definiciones:
Capicua → Un número que se lee igual de derecha a izquierda 203302.

d) Dada una lista simple, intercambie un número par por un impar en caso de que
exista alguno.

2) Dadas dos listas simples:

a) Sume dos listas desde el fondo en otra C, si no tienen la misma cantidad de


elementos sumarlas hasta llegar a la cabeza de alguna (Este sería el más complejo si no
tuvieran las pistas)

Pistas: Tienen dos opciones


Utilizar un función que les devuelva la posición anterior. (Poco eficiente)
Voltear las listas y sumarlas hasta que se acabe una y luego volteara de nuevo.

b) Dada dos listas elimine un elemento de A si el número que está en la misma


posición en B (obviamente si existe) tiene una paridad diferente al de A y no es primo.

c) Dada dos listas A y B copie los elementos de B al inicio de A y los de A al final de B.

Pista: Para hacer esto deben tener un puntero a las cabezas de ambas para no
duplicar la copia de datos una vez que copien una.
e) Dada dos listas A y B intercale sus elementos en C, en la siguiente proporción: 2 de
A y 3 de B. Si alguna de las listas se acaba anexe los elementos faltantes de la lista que
queda.

También podría gustarte