Time: 0:00
Test a custom input to verify an edge case (e.g. empty lists, negative numbers, duplicates).
This bug belongs to the infinite loops pattern
The tab freezes, nothing prints, and the loop condition never becomes false.
What went wrong: after checking mid, the code keeps mid in the range. When low and high are next to each other, mid never changes and the loop never ends.
The fix: low = mid + 1; and high = mid - 1;
Remember: in binary search the range must get smaller every time.
The pattern behind it: infinite loops.
Paste this into any web page or blog post. Visitors fix the bug right there, in their browser.
<iframe src="https://trybughunt.com/embed/1396986d-563a-45ed-bee2-951f1aabd0f2" title="Debugging challenge: Search freezes when the value is missing" width="100%" height="580" loading="lazy" style="border:1px solid #d4d4d8;border-radius:12px;max-width:760px"></iframe>
<p style="font-size:14px">Debugging challenge from <a href="https://trybughunt.com/challenges/1396986d-563a-45ed-bee2-951f1aabd0f2">TryBugHunt</a></p>