Рекурсия Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. 4 януари

Подобни документи
Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Триф

C++

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г ноември 2018 г. Трифон Трифонов (УП 18/19) Ма

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 15 ноември 6 декември 2018 г. Трифон Трифонов (УП 1

Динамична памет Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. Тр

Синтаксис за дефиниране на функции Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 6 януари 2016 г. Трифон Трифонов (ФП-И 15/

Канонична форма на клас или 4 (голямата четворка) Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно и

Microsoft Word - nbb2.docx

Указатели. Маисиви, указатели, параметри на функции Калин Георгиев 21 декември 2016 г. Калин Георгиев Увод в програмирането 21 декември 2016 г. 1 / 23

(не)разложимост на полиноми с рационални коефициенти Велико Дончев Допълнителен материал за студентите по Висша алгебра и Алгебра 2 на ФМИ 1 Предварит

Microsoft Word - Lecture 14-Laplace Transform-N.doc

-

4

Семинар № 2: Граници на редици, признаци на Даламбер и Коши за сходимост на редове

Частично рекурсивни, рекурсивни и примитивно рекурсивни функции. Рекурсивни и рекурсивно номеруеми множества Този текст съдържа някои сведения от теор

16. Основни методи за интегриране. Интегриране на някои класове функции Интегриране по части. Теорема 1 (Формула за интегриране по части). Ако

Глава 15 Въпрос 15: Оператор на Рейнолдс. Крайна породеност на пръстена от инвариантни полиноми на крайна матрична група. Навсякъде в настоящия въпрос

Вариант 1 Писмен Изпит по Дискретни Структури 14/02/2018 г. Оценката се образува по следния начин: 2 + бр. точки, Наредени двойки бележим с ъглови ско

Microsoft Word - PRMAT sec99.doc

Homework 3

Lush Green

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА

Microsoft Word - IGM-SER1111.doc

Проф

Глава 17 ζ-функция на Hasse-Weil. Преди да разгледаме ζ-функцията на Hasse-Weil трябва да въведем някои числови инварианти на крива, определена над кр

Маисви

Глава 5 Критерий за субхармоничност Да разгледаме някои общи свойства на полу-непрекъснатите отгоре функции, преди да се съсредоточим върху онези от т

Kontrolno 5, variant 1

Министерство на образованието, младежта и науката 60. Национална олимпиада по математика Областен кръг, г. Условия, кратки решения и кри

Основен вариант, клас Задача 1. (3 точки) За кои n съществуват различни естествени числа a 1, a 2,..., a n, за които сборът е естествено число

26. ТУРНИР НА ГРАДОВЕТЕ ЕСЕНЕН ТУР Основен вариант, клас Задача 1. (5 точки) Функциите f и g са такива, че g(f(x)) = x и f(g(x)) = x за всяк

ЛЕКЦИЯ 6 ЗАКОН ЗА ИНЕРЦИЯТА Определение. Броят на положителните коефициенти в каноничния вид на дадена квадратична форма се нарича положителен индекс

54. НАЦИОНАЛНА ОЛИМПИАДА ПО МАТЕМАТИКА НАЦИОНАЛЕН КРЪГ Задача 1. Да се намерят всички тройки от естествени числа (x, y, z) такива, че 2005 x + y + 200

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве

Глава 13 Пълни многообразия Определение Пред-многообразието X е отделимо, ако диагоналът = {(x, x) x X} е затворено подмножество на X X. Отделим

Задача D

Homework 2

3. Синтактичен анализ. Граматика на учебен програмен език STUDENT. Извеждане на изречения от правилата на граматиката Цел на упражнението Упражнението

XXX МЕЖДУНАРОДЕН ТУРНИР НА ГРАДОВЕТЕ Пролетен тур, ОСНОВЕН ВАРИАНТ за клас РЕШЕНИЯ Задача 1. Правоъгълник е разделен на няколко по-малки право

СОФИЙСКА МАТЕМАТИЧЕСКА ГИМНАЗИЯ ТУРНИР ПО МАТЕМАТИКА И ИНФОРМАТИКА "ЗА ТОРТАТА НА ДИРЕКТОРА" ТЕМА ПО МАТЕМАТИКА КЛАС Задача 1. Дадена е двуизмер

IATI Day 1/Junior Task 1. Trap (Bulgaria) X INTERNATIONAL AUTUMN TOURNAMENT IN INFORMATICS SHUMEN 2018 Задача 1. Капан Образуваме редица от точки, кои

СОФИЙСКА МАТЕМАТИЧЕСКА ГИМНАЗИЯ ТУРНИР ПО МАТЕМАТИКА И ИНФОРМАТИКА "ЗА ТОРТАТА НА ДИРЕКТОРА" ТЕМА ПО МАТЕМАТИКА 8 КЛАС Задача 1. Да се реши в цели чис

Exam, SU, FMI,

Програмиране на Паскал

Препис:

Рекурсия Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. 4 януари 2017 г. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 1 / 11

Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

N. Wirth, Algorithms and Data Structures, Fig 3.1 Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели директориите съдържат файлове и директории Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели директориите съдържат файлове и директории PHP = PHP Hypertext preprocessor Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели директориите съдържат файлове и директории PHP = PHP Hypertext preprocessor за да строшите камък: Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели директориите съдържат файлове и директории PHP = PHP Hypertext preprocessor за да строшите камък: ударете с чука, за да натрошите камъка на части Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели директориите съдържат файлове и директории PHP = PHP Hypertext preprocessor за да строшите камък: ударете с чука, за да натрошите камъка на части строшете получените по-малки камъни Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Повторение чрез позоваване на себе си приятелите на моите приятели са и мои приятели директориите съдържат файлове и директории PHP = PHP Hypertext preprocessor за да строшите камък: ударете с чука, за да натрошите камъка на части строшете получените по-малки камъни за да разберете какво е рекурсия, трябва да разберете какво е рекурсия Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 2 / 11

Рекурсията в математиката n! = { 1, n = 0, n(n 1)!, n > 0. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 3 / 11

Рекурсията в математиката { 1, n = 0, n! = n(n 1)!, n > 0. 1, n = 0, x n = x.x n 1, n > 0, 1, n < 0. x n Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 3 / 11

Рекурсията в математиката { 1, n = 0, n! = n(n 1)!, n > 0. 1, n = 0, x n = x.x n 1, n > 0, 1, n < 0. x n a, a = b, gcd(a, b) = gcd(a b, b), a > b, gcd(a, b a), a < b. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 3 / 11

Рекурсията в математиката { 1, n = 0, n! = n(n 1)!, n > 0. 1, n = 0, x n = x.x n 1, n > 0, 1, n < 0. x n a, a = b, gcd(a, b) = gcd(a b, b), a > b, gcd(a, b a), a < b. { 0, x = 0, f (x) = f (x + 1) 1, x > 0. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 3 / 11

Как се решават задачи с рекурсия? Декомпозиция свеждане на дадена задача към множество от по-прости задачи Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 4 / 11

Как се решават задачи с рекурсия? Декомпозиция свеждане на дадена задача към множество от по-прости задачи Рекурсията е вид декомпозиция, при който свеждаме задача към множество от по-прости задачи подобни на първоначалната Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 4 / 11

Как се решават задачи с рекурсия? Декомпозиция свеждане на дадена задача към множество от по-прости задачи Рекурсията е вид декомпозиция, при който свеждаме задача към множество от по-прости задачи подобни на първоначалната Как работи: Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 4 / 11

Как се решават задачи с рекурсия? Декомпозиция свеждане на дадена задача към множество от по-прости задачи Рекурсията е вид декомпозиция, при който свеждаме задача към множество от по-прости задачи подобни на първоначалната Как работи: Показваме решението на най-простите задачи (база, дъно) Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 4 / 11

Как се решават задачи с рекурсия? Декомпозиция свеждане на дадена задача към множество от по-прости задачи Рекурсията е вид декомпозиция, при който свеждаме задача към множество от по-прости задачи подобни на първоначалната Как работи: Показваме решението на най-простите задачи (база, дъно) Показваме как по-сложна задача се свежда към една или няколко по-прости (стъпка) Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 4 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Доказателство: за n = 0: трябва да проверим, че 0 = 0.1 Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Доказателство: за n = 0: трябва да проверим, че 0 = 0.1 нека допуснем, че сме доказали свойството за дадено n Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Доказателство: за n = 0: трябва да проверим, че 0 = 0.1 нека допуснем, че сме доказали свойството за дадено n ще го докажем за n + 1: Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Доказателство: за n = 0: трябва да проверим, че 0 = 0.1 нека допуснем, че сме доказали свойството за дадено n ще го докажем за n + 1: (2 + 4 +... + 2n) + 2(n + 1) = n(n + 1) + 2(n + 1) = (n + 1)(n + 2) Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Доказателство: за n = 0: трябва да проверим, че 0 = 0.1 нека допуснем, че сме доказали свойството за дадено n ще го докажем за n + 1: (2 + 4 +... + 2n) + 2(n + 1) = n(n + 1) + 2(n + 1) = (n + 1)(n + 2) Следователно: доказахме свойството за произволно n. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Математическа индукция Дефиниция Математическата индукция е метод за доказателство, използващ като предпоставка свойството, което се доказва. Пример: Да се докаже, че 2 + 4 +... + 2n = n(n + 1). Доказателство: за n = 0: трябва да проверим, че 0 = 0.1 нека допуснем, че сме доказали свойството за дадено n ще го докажем за n + 1: (2 + 4 +... + 2n) + 2(n + 1) = n(n + 1) + 2(n + 1) = (n + 1)(n + 2) Следователно: доказахме свойството за произволно n. Математическата индукция е рекурсивен метод за доказателство. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 5 / 11

Рекурсивни програми Рекурсията в програмирането Дефиниция Рекурсивна функция наричаме функция, която извиква себе си пряко или косвено. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 6 / 11

Рекурсивни програми Рекурсията в програмирането Дефиниция Рекурсивна функция наричаме функция, която извиква себе си пряко или косвено. Рекурсивни функции се поддържат от почти всички съвременни езици за програмиране. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 6 / 11

Рекурсивни програми Рекурсията в програмирането Дефиниция Рекурсивна функция наричаме функция, която извиква себе си пряко или косвено. Рекурсивни функции се поддържат от почти всички съвременни езици за програмиране. Теорема Всяка програма с цикли може да се напише с рекурсия и обратно. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 6 / 11

Рекурсивни програми Примери за рекурсивни функции Да се напише функция, която пресмята рекурсивно: 1 n! Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 7 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 3 * fact(2); n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 2 * fact(1); n 2 fact адрес на връщане return 3 * fact(2); n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 1 * fact(0); n 1 fact адрес на връщане return 2 * fact(1); n 2 fact адрес на връщане return 3 * fact(2); n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 1; n 0 fact адрес на връщане return 1 * fact(0); n 1 fact адрес на връщане return 2 * fact(1); n 2 fact адрес на връщане return 3 * fact(2); n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 1 * 1; n 1 fact адрес на връщане return 2 * fact(1); n 2 fact адрес на връщане return 3 * fact(2); n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 1 * 2; n 2 fact адрес на връщане return 3 * fact(2); n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 3 * 2; n 3 fact адрес на връщане return 4 * fact(3); n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции fact адрес на връщане return 4 * 6; n 4 main n 4 cout << fact(4); Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Стекови рамки на рекурсивни функции main n 4 cout << 24; Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 8 / 11

Рекурсивни програми Примери за рекурсивни функции Да се напише функция, която пресмята рекурсивно: 1 n! 2 НОД Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 9 / 11

Рекурсивни програми Примери за рекурсивни функции Да се напише функция, която пресмята рекурсивно: 1 n! 2 НОД 3 x n Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 9 / 11

Рекурсивни програми Примери за рекурсивни функции Да се напише функция, която пресмята рекурсивно: 1 n! 2 НОД 3 x n 4 числата на Фибоначи Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 9 / 11

Рекурсивни програми Примери за рекурсивни функции Да се напише функция, която пресмята рекурсивно: 1 n! 2 НОД 3 x n 4 числата на Фибоначи 5 числата на Фибоначи, но по-бързо. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 9 / 11

Рекурсивни програми Примери за рекурсивни функции Да се напише функция, която пресмята рекурсивно: 1 n! 2 НОД 3 x n 4 числата на Фибоначи 5 числата на Фибоначи, но по-бързо. 6 <израз> със скоби, където <израз> ::= <цифра> (<израз><операция><израз>) <цифра> ::= 0 1 2 3 4 5 6 7 8 9 <операция> ::= + - * / Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 9 / 11

Рекурсивни програми Рекурсивни функции за масиви Да се напише функция, която чрез рекурсия 1 намира сума на елементите на масив Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 10 / 11

Рекурсивни програми Рекурсивни функции за масиви Да се напише функция, която чрез рекурсия 1 намира сума на елементите на масив 2 проверява дали елемент съществува в масив Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 10 / 11

Рекурсивни програми Рекурсивни функции за масиви Да се напише функция, която чрез рекурсия 1 намира сума на елементите на масив 2 проверява дали елемент съществува в масив 3 проверява дали елементите на масив са подредени в растящ ред Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 10 / 11

Рекурсивни програми Рекурсивни функции за масиви Да се напише функция, която чрез рекурсия 1 намира сума на елементите на масив 2 проверява дали елемент съществува в масив 3 проверява дали елементите на масив са подредени в растящ ред 4 проверява дали елементите на масив са различни Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 10 / 11

Рекурсивни програми Рекурсивни функции за масиви Да се напише функция, която чрез рекурсия 1 намира сума на елементите на масив 2 проверява дали елемент съществува в масив 3 проверява дали елементите на масив са подредени в растящ ред 4 проверява дали елементите на масив са различни 5 сортира масив с алгоритъма за бързо сортиране Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 10 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) 2 Разделяме масива на две части: Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) 2 Разделяме масива на две части: елементи по-малки от оста Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) 2 Разделяме масива на две части: елементи по-малки от оста елементи по-големи или равни на оста Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) 2 Разделяме масива на две части: елементи по-малки от оста елементи по-големи или равни на оста 3 поставяме оста между двете части на масива Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) 2 Разделяме масива на две части: елементи по-малки от оста елементи по-големи или равни на оста 3 поставяме оста между двете части на масива 4 рекурсивно сортираме поотделно двете части на масива Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Рекурсивни програми Алгоритъм за бързо сортиране 1 Избираме елемент от масива ( ос ) 2 Разделяме масива на две части: елементи по-малки от оста елементи по-големи или равни на оста 3 поставяме оста между двете части на масива 4 рекурсивно сортираме поотделно двете части на масива Този подход за решение се нарича разделяй и владей. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16 г. 4.01.17 г. 11 / 11

Да се напише рекурсивна функция, която проверява дали два низа съвпадат. *) напишете strcmp