Лекция №4. Асимтотическая нотация. Предмет "Структуры и алгоритмы обработки данных"

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Лекция №4. Асимтотическая нотация. Предмет "Структуры и алгоритмы обработки данных" - Presentation Transcript

    1. Хакасский государственный университет им. Н.Ф. Катанова Структуры и алгоритмы обработки данных Лекция: Ассимтотическая нотация и рекурентные соотношения Николай Гребенщиков, www.grebenshikov.ru
    2. O - нотация: ассимтотическая верхняя граница f (n) = O(g(n)) ⇒ (∃c > 0, n0 > 0 ⇒ 0 ≤ f (n) ≤ c · g(n), n ≥ n0) O(g(n)) = {f (n) : ∃c > 0, n0 > 0 ⇒ 0 ≤ f (n) ≤ c · g(n), n ≥ n0} Пример: 2n2 = O(n3) ⇔ 2n2 ∈ O(n3) 1
    3. Использование в формулах f (n) = n3 + O(n2) ⇒ (∃h(n) ∈ O(n2), f (n) = n3 + h(n)) 2
    4. Ω - нотация: ассимтотическая нижняя граница Ω(g(n)) = {f (n) : ∃c > 0, n0 > 0 ⇒ 0 ≤ c · g(n) ≤ f (n), n ≥ n0} √ Пример: n = Ω(lg(n)) 3
    5. Θ - нотация: ассимтотическое равенство f (n) : ∃c1 > 0, c2 > 0, n0 > 0 ⇒ Θ(g(n)) = c1 · g(n) ≤ f (n) ≤ c2 · g(n), n ≥ n0 Θ(g(n)) = O(g(n)) ∩ Ω(g(n)) 4
    6. Решение рекурсий: метод подстановки T (n) = 4T (n/2) + n 1. Догадаться (предположить) о решении 2. Проверить решение с помощью индукции 3. Найти и подставить константы 5
    7. Решение рекурсий: метод подстановки T (n) = 4T (n/2) + n Догадка: T (n) = O(n3) Базис: T (1) = Θ(1) < c < c · n3 Посылка индукции: T (k) ≤ c · k3, k < n 6
    8. Ход индукции: n T (n) = 4T +n 2 n 3 ≤ 4c +n 2 1 = cn3 + n 2 = cn 3 − ( 1 cn3 − n) 2 1 ≤ cn3, cn3 − n ≥ 0 2 Найдем константы: (c ≥ 1, n ≥ 1) 7
    9. Догадка: T (n) = O(n2) Базис: T (1) = Θ(1) < c < c · n2 Посылка индукции: T (k) ≤ c · k2, k < n 8
    10. Ход индукции: n T (n) = 4T +n 2 n 2 ≤ 4c +n 2 = cn2 + n = cn2 − (−n) Коллизия: нужно −n > 0 9
    11. Посылка индукции: T (k) ≤ c1 · k2 − 2 · k, k < n Ход индукции: n T (n) = 4T +n 2 n 2 n = 4c1 − c2 +n 2 2 = c1n2 + (1 − 2c2)n = c1n2 − 2c2n − (−1 + c2)n ≤ c1n2 − c2n, c2 ≥ 1 Базис: T (1) = Θ(1) < c1 − c2 10
    12. Константы: (c2 ≥ 1) (c1 ≥ c2) 11
    13. Дерево рекурсии T (n) = T (n/4) + T (n/2) + n2 12
    14. 13
    15. Cумма: по уровням (1 + 5/16 + 25/256 + . . . + 5k /16k + . . .)n2 =? Решение: сравнение (1 + 1/2 + 1/4 + 1/8 + 1/16 + . . .) = = (1 + 1/2k + . . .) = 1.1111111(1) =2 1/2k > 5k /16k ⇒ ⇒ (1 + 5k /16k + . . .)n2 < 2n2 ⇒ (1 + 5k /16k + . . .)n2 = O(n2) 14
    16. Основной метод применяется для T (n) = aT (n/b) + f (n) a ≥ 1, b > 1, f (n) − (f (n) > 0, n > n0) 15
    17. Основной метод 1. Если f (n) = O(nlogba− ), > 0 ⇒ T (n) = Θ(nlogba) 2. Если f (n) = Θ(nlogba) ⇒ T (n) = Θ(nlogbalog(n)) 3. Если f (n) = Ω(nlogba− ), > 0, af (n/b) ≤ cf (n), c < 1, n > n0 ⇒ ⇒ T (n) = Θ(f (n)) 16
    18. Пример T (n) = 4T (n/2) + n nlogba = nlog24 = n2 - 1-й случай Ответ: T (n) = Θ(n2) 17
    19. Пример T (n) = 4T (n/2) + n2 - 2-й случай Ответ: T (n) = Θ(n2log(n)) 18
    20. Пример T (n) = 4T (n/2) + n3 - 3-й случай Ответ: T (n) = Θ(n3) 19
    21. Пример T (n) = 4T (n/2) + n3/log(n) Ответ: Основной метод не подходит - использовать другой метод. 20
    22. Основной метод: идея доказательства logb n−1 Итого: Θ(nlogba) + aj f (n/bj ) j=0 21
    23. Основной метод: идея доказательства 1. Доминирует f (n). Сумма уровня ↓. 2. Доминирует Θ(nlogba). Сумма уровня ↑. 3. Нет доминанты. Суммы уровней примерно равны f (n). 22
    24. Список литературы • Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгорит- мы: построение и анализ, 2-е издание. - М. : Издатель- ский дом “Вильямс”, 2007. сс.87-139. 23
    SlideShare Zeitgeist 2009

    + Nikolay GrebenshikovNikolay Grebenshikov Nominate

    custom

    41 views, 0 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 41
      • 41 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories