Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sancho1996
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 55
#1

Что такое рекурсия? Зачем она нужна? - C++

02.07.2013, 19:52. Просмотров 712. Ответов 7
Метки нет (Все метки)

Объясните пож человеческим языком, что такое Рекурсия.

Я знаю что это вызов функции самой себя.
Но всё равно не могу догнать зачем она нужна.

Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2013, 19:52     Что такое рекурсия? Зачем она нужна?
Посмотрите здесь:

C++ Что делает данный код и зачем такое кому-нибудь может понадобиться?
сегодня наконец то понял что такое КЛАСС, и ОБЪЕКТ. понято всё, кроме одного - зачем всё это? в смысле, можно же без этого? так зачем жизнь усложнять? C++
C++ Что такое hash-таблицы, и зачем они нужны?
зачем нужна перестановка C++
Что делает функция compare в коде и зачем она нужна в qsort C++
Битовые поля структур: что такое и зачем они нужны? C++
C++ Что такое h -файл и obj-файл?Зачем они нужны?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Second
79 / 80 / 1
Регистрация: 10.08.2011
Сообщений: 665
02.07.2013, 20:00     Что такое рекурсия? Зачем она нужна? #2
Это одно из многих определений в учебниках, которое крайне редко используется на практике.
В педевикии лаконично описано, но маловероятно повстречать сие в реалиях.
Thinker
Эксперт C++
 Аватар для Thinker
4218 / 2192 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.07.2013, 20:04     Что такое рекурсия? Зачем она нужна? #3
Цитата Сообщение от Second Посмотреть сообщение
маловероятно повстречать сие в реалиях.
да ну... та же широко используемая сортировка quicksort рекурсивная. обработка бинарных деревьев чаше всего рекурсивна и многое другое.
sancho1996
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 55
02.07.2013, 20:10  [ТС]     Что такое рекурсия? Зачем она нужна? #4
Цитата Сообщение от Thinker Посмотреть сообщение
да ну... та же широко используемая сортировка quicksort рекурсивная. обработка бинарных деревьев чаше всего рекурсивна и многое другое.
расскажите о рекурсии по подробнее пож
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
02.07.2013, 20:16     Что такое рекурсия? Зачем она нужна? #5
sancho1996, это просто вызов функции самой себя. Допустим:
C++
1
2
3
4
5
6
bool f(int x)
{
if (x == 1) return false;
else
f(x - 1);
}
Функция будет вызывать себя -ндцать раз, до тех пор пока не вызовет с числом, равным 1, а затем вызов прекратится.
castaway
Эксперт С++
4869 / 3008 / 370
Регистрация: 10.11.2010
Сообщений: 11,059
Записей в блоге: 10
Завершенные тесты: 1
02.07.2013, 20:40     Что такое рекурсия? Зачем она нужна? #6
Много лишнего для примера..
C++
1
2
3
4
5
void func( int n )
{
    if ( !n ) return; // если n == 0 ...
    func( n - 1 );
}
Собственно, она ничего не делает, просто пример работы рекурсии.
Thinker
Эксперт C++
 Аватар для Thinker
4218 / 2192 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.07.2013, 20:45     Что такое рекурсия? Зачем она нужна? #7
Цитата Сообщение от lazybiz Посмотреть сообщение
она ничего не делает, просто пример работы рекурсии.
вот откуда потом появляются фразы типа

Цитата Сообщение от Second Посмотреть сообщение
Это одно из многих определений в учебниках, которое крайне редко используется на практике... маловероятно повстречать сие в реалиях.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.07.2013, 20:52     Что такое рекурсия? Зачем она нужна?
Еще ссылки по теме:

C++ Объясните человеческим языком мне чайнику что такое singleton, статический класс. Зачем они нужны. Что рекомендуете прочитать мне для начала
Что такое тестирующая программа и зачем она нужна? C++
Явная специализация, зачем она нужна?(Шаблоны функций) C++
Что такое "нейронная сеть" и как она работает? C++
Объясните, как работает sizeof() и зачем она в этой программе C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
castaway
02.07.2013, 20:52     Что такое рекурсия? Зачем она нужна?
  #8

Не по теме:

Thinker, ))))))

Yandex
Объявления
02.07.2013, 20:52     Что такое рекурсия? Зачем она нужна?
Ответ Создать тему
Опции темы

Текущее время: 11:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru