Pagini recente » Diferente pentru template/taskheader intre reviziile 35 si 33 | Diferente pentru template/taskheader intre reviziile 35 si 26 | Diferente pentru blog/photosynth intre reviziile 2 si 3 | Diferente pentru blog/cautare-binara intre reviziile 3 si 4
Nu exista diferente intre titluri.
Diferente intre continut:
Ideea de baza e ca vom folosi invarianti
static public int search(int [] array, int target)
{
int high = array.length, low = -1, probe;
while (high - low > 1)
{
probe = (low + high) >>> 1;
if (array[probe] < target)
low = probe;
== code(c) |
int search(int[] A, int x) {
int hi = A.length, lo = -1, mid;
while (hi - lo > 1) {
mid = (lo + hi) / 2;
if (A[mid] < x)
low = mid;
else
high = probe;
hi = mid;
}
if (high == array.length || array[high] != target)
if (hi == A.length || A[hi] != x)
return -1;
else
return high;
return hi;
}
....
===
O data ce ati inteles ideea de mai sus, veti vedea cum puteti schimba invariantul usor pentru a rezolva probleme ca gasirea ultimei aparitii a lui x in sirul sortat, gasirea predecesorului lui x in sir sau gasirea succesorului.
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.