Programowanie funkcyjne - łączenie list

0

Witam. Ma za zadanie napisać funkcję łączącą dwie listy w jedną. Listy w tym zadaniu są rekurencyjne. Do tej pory nie miałem problemu z tego typu zadaniami ale z tym nie mogę sobie poradzić. Czy możecie mi dać jakieś wskazówki, jak to można zrobić?
Z góry dziękuję za pomoc. (Konkretnych języków nie podałem bo nie chcę gotowego kodu)

0

Co rozumiesz przez połączenie? Coś a la zip czy bardziej ich konkatenację?

0

Mam na myśli konkatenację.

0

Co to "Listy w tym zadaniu są rekurencyjne." oznacza? Czy listy są skończone?

0

Tak, listy są skończone. Chodzi o to, że mogę się jedynie odwoływać do głowy listy i ogona. Następnie do głowy ogona itd.

0

Funkcja może działać tak (zakładając, że wejściowe listy to list1 i list2):

  1. Jeżeli list1 jest pusta to zwróć list2.
  2. Jeżeli list1 nie jest pusta zwróć specjalnie stworzoną klasę ConcatenatedList

Klasa ConcatenatedList pobiera jako argumenty (dla konstruktora) dwie listy. Operator wyłuskania głowy zwraca głowę list1. Operator wyłuskania ogona zwraca wynik poprzednio opisanej funkcji dla argumentów (ogon list1, list2).

0

Dzięki :) jednak sam wcześniej rozwiązałem problem. Łączę kolejne elementy listy pierwszej do natrafienia jej końca. Gdy trafiam na koniec zwracam listę drugą. Dziękuję wszystkim za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1