假设我们要保存n个节点的有序树的形状,每个节点都有最大的2个子节点。
如果是二叉树,我们必须使用2n位。因为在我们的情况下,我们没有左或右孩子,他们是一样的,所以我们必须有一些多余的序列。
那么,我们能用更好的方式编码它吗?看起来每个节点仍然有3个案例,没有子节点,一个子节点,两个子节点,但是我们能把它存储在2位以下吗或者总的来说有一个比2更好的常数?
最佳答案
您可能能够存储您提到的2n位,然后使用huffman coding或其他lossless data compression技术压缩此数据。
我不认为你能达到一个更好的最坏情况的界限,但平均来说-它应该为你节省一些空间。