hallo erneut 
ich bearbeite grade Teile & Herrsche Algorithmen und bin grade bei der Aufgabe, den Index des größten Elements eines pyramidal sortierten Arrays zu bestimmen( bedeutet, die Elemente in dem Array werden streng aufsteigend bis zu einem Index k angeordnet, danach ist das Array streng abfallend ..:z.B. (10,12,15,9,8,0) )
mein Code funktioniert zwar, aber ich würde das Problem gerne in nur einer Methode lösen, bzw die Laufzeit verbessern
Hier mein Code:
ich bearbeite grade Teile & Herrsche Algorithmen und bin grade bei der Aufgabe, den Index des größten Elements eines pyramidal sortierten Arrays zu bestimmen( bedeutet, die Elemente in dem Array werden streng aufsteigend bis zu einem Index k angeordnet, danach ist das Array streng abfallend ..:z.B. (10,12,15,9,8,0) )
mein Code funktioniert zwar, aber ich würde das Problem gerne in nur einer Methode lösen, bzw die Laufzeit verbessern
Hier mein Code:
Code:
public static int pyramide(int []array, int l, int r)
{
int q=(l+r)/2;
if(array.length==0)
{
return 0;
}
if(array.length==1)
{
return array[0];
}
if(l==r)
{
return array[l];
}
else
{
if(array[l]<pyramide(array,q+1,r))
{
return pyramide(array,q+1,r) ;
}
else
{
return pyramide(array,l,q);
}
}
}
public static int indexrek(int []arr,int l,int r)
{
if(arr.length==0)
{
return 0;
}
if(arr.length==1)
{
return 0;
}
if(arr[l]==pyramide(arr,l,r))
{
return l;
}
else
{
return indexrek(arr,l+1,r);
}
}