0

From CLRS 3rd edition, B-3 c.:

Show that by removing at most $O(\log(n))$ edges, we can partition the vertices of any n-vertex binary tree into two sets A and B such that $|A| = \left\lfloor\frac{n}{2}\right\rfloor$ and $|B| = \left\lceil\frac{n}{2}\right\rceil$.

In a previous problem, it was shown that removing one edge could partition the tree into two sets A and B, such that $|A|≤ 3n/4$ and $|B|≤ 3n/4$ (Partition a binary tree by removing a single edge).

I'm not sure at all how to begin solving this problem. What is the solution of this problem?

  • Repeat the procedure to what until what is $\lceil n/2\rceil$? – Misha Lavrov May 07 '23 at 15:29
  • @MishaLavrov I have no idea. I updated the question to reflect this. My original intention was to keep truncating the tree by a factor of 3/4, and keeping the larger of the two until there is a subtree of size n/2. – Dean DeRosa May 07 '23 at 15:36
  • I feel like that original intention is a better idea than no idea; you should keep it. It has some flaws (in particular, $(\frac34)^3 < \frac12$) but maybe they can be fixed when all we want is a forest, not a tree. But it's possible there are more direct solutions. – Misha Lavrov May 07 '23 at 15:42

0 Answers0