Subsecvență maximă în creștere

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

În informatică , problema creșterii subsecvenței maxime constă în găsirea unei subsecvențe a unei secvențe date în care elementele subsecvenței sunt ordonate de la cel mai mic la cel mai mare și a căror lungime este maximă posibilă. Subsecvența nu trebuie să fie contiguă sau unică. Problema celei mai mari subsecvențe în creștere poate fi rezolvată în timp O ( n log n ), unde n reprezintă lungimea secvenței originale.

Exemplu

În primii 16 termeni ai secvenței Van der Corput

0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 11, 7, 15

una dintre cele mai mari subsecvențe în creștere este

0, 2, 6, 9, 11, 15.

Această subsecvență are șase elemente; secvența originală nu are subsecvențe în creștere de lungime 7 sau mai mult. Cea mai mare subsecvență în creștere în acest caz nu este unică: de exemplu,

0, 4, 6, 9, 11, 15 sau 0, 4, 6, 9, 13, 15

Acestea sunt alte subsecvențe în creștere de aceeași lungime și, prin urmare, alte soluții valide la problema în acest caz.

Limite de lungime

Conform teoremei Erdős - Szekeres , fiecare succesiune de n 2 +1 numere întregi distincte are o subsecvență crescătoare sau descrescătoare de lungime n + 1.

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