Вы не только начинаете изучать рекурсию, потому что рекурсия является частью вашей повседневной жизни. Вы просто не замечаете, потому что это так нормально, и никто не называет это рекурсией.
Например, вы смотрите фильм по телевизору, и в одной сцене есть кто-то, кто смотрит фильм по телевизору.
В программировании рекурсия - это способ облегчить сложные вещи. Всегда начинайте с простого случая:
- Каков результат exchangePairs ("")?
- Что является результатом exchangePairs ("x"), где x - любой символ?
- Предположим, что вы уже выполнили exchangePairs (), каков будет результат для "xy ...", где "..." - любая строка? Конечно, "yx +++", где "+++" является результатом exchangePairs ("...").
Теперь оказалось, что мы рассмотрели все случаи! Задача решена!
Таково величие рекурсии. Вы просто используете свою функцию, как если бы она была завершена, несмотря на то, что вы еще не завершили ее.