TAD de las colas - Agrupación de colas
Utilizando el tipo abstracto de datos de las colas, definir las funciones
agrupaColas :: [Cola a] -> Cola a
tal que agrupaColas [c1,c2,c3,...,cn]
es la cola formada mezclando las colas de la lista como sigue: mezcla c1
con c2
, el resultado con c3
, el resultado con c4
, y así sucesivamente. Por ejemplo,
λ> ej1 = inserta 2 (inserta 5 vacia) λ> ej2 = inserta 3 (inserta 7 (inserta 4 vacia)) λ> ej3 = inserta 9 (inserta 0 (inserta 1 (inserta 6 vacia))) λ> agrupaColas [] - λ> agrupaColas [ej1] 5 | 2 λ> agrupaColas [ej1, ej2] 5 | 4 | 2 | 7 | 3 λ> agrupaColas [ej1, ej2, ej3] 5 | 6 | 4 | 1 | 2 | 0 | 7 | 9 | 3