Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void divide(int i, int j)
- {
- if(i == j) // daca este un singur element;
- {varf = v[i];return;}
- if(j == i+1 && v[i] >= v[j]) //daca sunt 2 elemente si stanga mai mare ca dreapta
- {varf = v[i];return;}
- if(j == i+1 && v[i] < v[j]) // daca sunt 2 elemente si dreapta mai mare ca stanga
- {varf = v[j];return;}
- int middle = (i+j)/2; // luam mijlocul din vector;
- if(v[middle] > v[middle+1] && v[middle] > v[middle-1]) // daca sunt 3 elemente si
- {varf = v[middle]; return;} //cel din mijloc este mai mare decat vecinii
- if(v[middle] > v[middle+1] && v[middle] < v[middle-1])
- divide(i, middle-1);
- else
- divide(middle+1, j);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement