Najdłuższy spójny podciąg rosnący¶
Opis problemu¶
Implementation¶
Description implementacji¶
Funkcja longestGrowingSubstringLength przyjmuje dwa argumenty: liczbę n reprezentującą liczbę elementów w tablicy i tablicę tab zawierającą te elementy. Funkcja zwraca długość najdłuższego rosnącego podciągu.
Schemat działania funkcji jest następujący:
- Zainicjalizuj długość
lengthaktualnie analizowanego podciągu oraz najdłuższego dotychczas znalezionego podciągumxna \(1\). - Przeszukaj tablicę od drugiego elementu do końca.
- Jeżeli bieżący element
tab[i]jest większy od poprzedniegotab[i-1], to zwiększ długośćlengthaktualnie analizowanego podciągu o \(1\) i jeżeli ta długość jest większa od dotychczas najdłuższego podciągu, zaktualizujmx. - Jeżeli bieżący element
tab[i]nie jest większy od poprzedniegotab[i-1], to zresetuj długośćlengthaktualnie analizowanego podciągu do \(1\). - Po przejściu przez całą tablicę zwróć
mx, czyli długość najdłuższego rosnącego podciągu.
Funkcja main definiuje tablicę tab z \(10\) elementami, przekazuje tę tablicę do funkcji longestGrowingSubstringLength w celu znalezienia długości najdłuższego rosnącego podciągu, a następnie wyświetla ten wynik na ekranie.