Napisać deklarację funkcji g:int list * int list → int list, g(x, y) = przeplot list x, y liczb całkowitych
Na przykład:
g([1,4,2,5],[1,3,5,7,9,11]) = [1,1,4,3,2,5,5,7,9,11]
g([1,2,3],[4,5,6]) = [1,4,2,5,3,6]
g([1,2,3,4,5],[6,7,8]) = [1,6,2,7,3,8,4,5]
g([],[1,2,3]) = [1,2,3]
g([1,2,3],[]) = [1,2,3]
Kod źródłowy:
fun append(x, y) = if null(x) then y else hd(x) :: append(tl(x), y) fun g(x, y) = if null(x) then y else if null(y) then x else append(append([hd(x)],[hd(y)]),g(tl(x),tl(y)));
Przypadki testowe:
g([1,4,2,5],[1,3,4,5,7,9,11]); g([1,2,3],[4,5,6]); g([1,2,3,4,5],[6,7,8]); g([],[1,2,3]); g([1,2,3],[]);
Brak komentarzy:
Prześlij komentarz