並べ替えられた/並べ替えられていない配列に関するインタビューの質問に出くわすことがよくあり、この配列のある種のプロパティを見つけるように求められます。たとえば、配列内で奇数回出現する数値を検索したり、サイズが 100 万のソートされていない配列内で欠落している数値を検索したりします。多くの場合、質問は O(n) ランタイムの複雑さ、または O(1) スペースの複雑さなどの追加の制約を投稿します。これらの問題はどちらも、ビット単位の操作を使用してかなり効率的に解決できます。もちろん、これらがすべてではありません。このような質問は山ほどあります。
私にとって、ビット単位のプログラミングは、10 進数ではなく 2 進数で機能するため、ハックや直感に基づいているように思えます。実生活でのプログラミング経験がまったくない大学生なので、この種の質問が実際の仕事で実際に人気があるのか 、それともインタビュアーが最も賢い候補者を選ぶために使用する頭の体操にすぎないのか、私は興味があります. それらが実際に役立つ場合、実際にどのようなシナリオで適用できますか?