Hallo,
ich suche eine Divide & Conquer-Methode, mit der man die Länge der längsten, aufsteigenden, zusammenhängenden Teilfolge in einem Array ermitteln kann.
Bsp.:
{ 3, -2, -1, 1, 3, 1, -2, 3 },
lazT = { -2, -1, 1, 3 },
Also wäre die Länge 4.
Meine erste Idee in Pseudo-Code:
lazT(Array A, n, q, r) //Aufruf mit n = 1, q = 0 und r = A.length
if q = r then
return n
else if A[q] < A[q+1] then
return lazT(A, n+1, q+1, r)
else
return max { lazT(A, 1, q+1, r), n }
Wenn ich aber D&C richtig verstanden habe, ist das ja nur eine rekursive Methode, ohne irgendein Teilen oder Herrschen.
Wie kann ich daraus D&C machen oder einfach, wie sieht die Methode aus?
Vielen Dank im Voraus!