En la pregunta 17, recordar que se pide la que NO es correcta:
c- genera un error porque no hay instancia de ToNum
para ningún numérico, entonces no se puede hacer toInt 5
.
e - está bien, dado que da 0 + 1
.
d - es la opción incorrecta, dado que da 5 + 1
.
En la pregunta 15, bar
hace una recorrida tipo DFS, pero la lista resultante va quedando invertida. En foo
se hace el reverse
del resultado.
Algunos pasos de la ejecución de bar
para ver como funciona:
bar [Node (Node Empty 3 (Node Empty 5 Empty)) 4 Empty] []
= bar [Empty, (Node Empty 5 Empty), Empty] [3,4]
= bar [(Node Empty 5 Empty), Empty] [3,4]
= bar [Empty, Empty, Empty] [5,3,4]
= ... = [5,3,4]
Luego al hacer reverse
nos queda [4,3,5]
.