refactor permutation related
another no extra space approach
refactor level order traversal
neater binary search code