Substructură optimă

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În informatică , o problemă are o substructură optimă dacă este posibilă construirea eficientă a unei soluții optime pornind de la soluțiile optime ale subproblemelor sale. Această proprietate este necesară pentru a utiliza tehnici de programare dinamică sau algoritmi lacomi .

Căutați cea mai scurtă cale într-un grafic folosind substructuri optime.

Un exemplu de substructuri optime este căutarea celei mai scurte căi între două vârfuri într-un grafic , așa cum se ilustrează în figura următoare: mai întâi cea mai scurtă cale se găsește de la vârful de sosire la toate vârfurile apropiate de cea inițială (în mod repetat și cu aceeași metodă); atunci se alege calea care minimizează greutatea totală a arcurilor .

De obicei, o problemă cu substructură optimă este rezolvată cu un algoritm lacom . Dacă problema are și subprobleme suprapuse , poate fi utilizat un algoritm dinamic .


Probleme cu substructura optimă

Elemente conexe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT