Two stone figures climbing opposite sides of the same staircase, destined to never meet – just like those poor elements in your array during a bidirectional search. They're working so hard, climbing step by step, comparing values, only to pass each other in the night. Classic algorithm heartbreak. Next time just use a hash table and save yourself the medieval architecture tour.