Here is a step by step tutorial explaining a popular software engineering technical interview question asked at both Microsoft and Facebook!
Check out my interview prep platform for learning the patterns!
📢 Interview Prep Platform: https://algoswithmichael.com
🎧 Join the community Discord: https://discord.gg/aVWsAaaCtT
💰 Support me on Patreon: https://www.patreon.com/michaelmuinos
🔗Follow me on LinkedIn: https://www.linkedin.com/in/michael-muinos
📂Follow me on Github: https://github.com/MichaelMuinos
The idea of the problem is to use a binary search to narrow our search in half upon each iteration. This problem has us using binary search in a different way however since we must move our pointers based on the difference between our "right" and "mid" pointer.
Since we should expect every number except one to have a duplicate, we move left or right depending on the the size of the difference we calculate.