Мазмуну:

Динамикалык программалоону кантип баштасам болот?
Динамикалык программалоону кантип баштасам болот?

Video: Динамикалык программалоону кантип баштасам болот?

Video: Динамикалык программалоону кантип баштасам болот?
Video: 1-тема: Python программалоо тили 2024, Май
Anonim

Динамикалык программалоо маселесин чечүү үчүн 7 кадам

  1. DP көйгөйүн кантип таануу керек.
  2. Көйгөйдүн өзгөрмөлөрүн аныктоо.
  3. Кайталануу байланышын так билдириңиз.
  4. Негизги учурларды аныктаңыз.
  5. Аны итеративдик же рекурсивдүү түрдө ишке ашырууну чечиңиз.
  6. Эстетүү кошуу.
  7. Убакыттын татаалдыгын аныктоо.

Ошо сыяктуу эле, сиз динамикалык программалоо кайда колдонулат деп сурасаңыз болот?

Динамикалык программалоо болуп саналат колдонулган бизде көйгөйлөр бар, аларды окшош кичи көйгөйлөргө бөлүүгө болот, ошондуктан алардын натыйжалары кайра колдонулган . Көбүнчө, бул алгоритмдер колдонулган оптималдаштыруу үчүн. Колдогу чакан маселени чечүүдөн мурун, динамикалык алгоритм мурда чечилген чакан маселелердин натыйжаларын текшерүүгө аракет кылат.

Динамикалык программалоонун мисалы деген эмнени сурашыбыз мүмкүн? Мисал : сумка. Мисал : Матрица-чынжырды көбөйтүү. Динамикалык программалоо О(n2) же O(n3) убакытта көптөгөн маселелерди чечүү үчүн колдонула турган күчтүү ыкма, ага жөнөкөй мамиле экспоненциалдык убакытты талап кылат.

Кошумча, сиз динамикалык программалоону канча жол менен ишке ашыра аласыз?

Эки бар жолдору жакындоо ар кандай динамикалык программалоо негизделген көйгөйлөр.

Динамикалык программалоо реалдуу жашоодо колдонулабы?

Динамикалык программалоо оор болуп саналат колдонулган компьютердик тармактарда, маршрутташтырууда, графикалык көйгөйлөрдө, компьютердик көрүнүштө, жасалма интеллектте, машина үйрөнүүдө ж.б. реалдуу жашоодо колдонулат ? менен тааныштыруу максатында динамикалык - программалоо чечүүгө мамиле чыныгы жашоо көйгөйлөр, келгиле, трафикке негизделген көйгөйдү карап көрөлү.

Сунушталууда: