while(low <= high)
{
mid = (low + high)/2;
if (target < list[mid])
high = mid - 1;
else if (target > list[mid])
low = mid + 1;
else break;
}
Dies ist Binär-Suche natürlich, aber ich möchte die Komplexität finden.Erklären Sie die Zeit Komplexität des Algorithmus
Nur vom Code zu sehen, wie würde ich das Big-O finden?
Für die while
Schleife wird es im Durchschnitt laufen N/2
mal richtig?
Aber wenn du nicht wüsstest, dass das binäre Suche war, wie würdest du das Big-O dieses Codes finden, wenn du dir den Code anschaust?