I was trying to solve one interview question, but for that I have to travel the binary tree level by level. I have designed BinaryNode with having below variable
var queue = new Queue(); queue.Enqueue(rootNode); while(queue.Any()) { var currentNode = queue.Dequeue(); if(currentNode.data == searchedData) { break; } if(currentNode.Left != null) queue.Enqueue(currentNode.Left); if(currentNode.Right != null) queue.Enqueue(currentNode.Right); }