我正在准备工作面试,并有一个问题。 我有2个n和m大小的二进制数组。我需要创建一种算法,将它们合并在一起,然后分开。合并的数组也必须是二进制数组。没有关于合并数组大小的信息,我认为它可能是n + m。
答案 0 :(得分:2)
如果您知道A
和B
的最大大小是多少,则可以用二进制代码编码A
和B
的大小,然后创建一个新的二进制文件多路传输
A
的大小A
内容B
的大小B
内容然后解复用(分离A
和B
)很容易。
它类似于电信中执行的操作。
编辑:我提到必须知道最大大小。这是因为对于多路分解,我们需要知道多少位用于编码大小。然后,该编码的位数必须固定。