Big o 二进制乘法的大O表示法复杂性

Big o 二进制乘法的大O表示法复杂性,big-o,Big O,以下操作的大O表示法是什么: A=1*(1010)+0*(011) 谢谢你,奥利维耶利。那么,请谈谈这个:A=1*(01101010)+0*(10000101)+1*(101010100)+0*(10101010)+0*(10101010)。它也是O(1)。正如你所见,它就像一个二进制位乘以8个二进制位四次。如果它也是O(1),请原谅,我怎样才能证明这一点。谢谢你的问候 这是O(1) 它完全不依赖于任何输入,并且始终是常量。这里的问题是,我们假设位的计数是变量还是常量 恒定位数:复杂度为O(1

以下操作的大O表示法是什么:

A=1*(1010)+0*(011)



谢谢你,奥利维耶利。那么,请谈谈这个:A=1*(01101010)+0*(10000101)+1*(101010100)+0*(10101010)+0*(10101010)。它也是O(1)。正如你所见,它就像一个二进制位乘以8个二进制位四次。如果它也是O(1),请原谅,我怎样才能证明这一点。谢谢你的问候

这是O(1)


它完全不依赖于任何输入,并且始终是常量。

这里的问题是,我们假设位的计数是变量还是常量

恒定位数:复杂度为O(1),因为所有可能的输入数的复杂度都相同


位的可变计数:对于第一个数字的每一位,您添加移位的第二个数字。考虑到任意长数字的加法可能具有复杂度O(N),最终的复杂度为O(N^2),其中N是位的计数。

请详细解释您想知道的内容。像这样对我来说没有意义。这个操作总是需要完全相同的时间。为什么这个标签是Matlab?如果我在Matlab中这样做,那么这个操作的最大目标是什么?@Dan,Nabla,MikDiet,John Kugelman,SK9。我的问题是,大O代表什么:A=1*(01101010)+0*(10000101)+1*(101010100)+0*(10101010)。那么,请谈谈这个:谢谢奥利维里。那么,请谈谈这个:A=1*(01101010)+0*(10000101)+1*(101010100)+0*(10101010)+0*(10101010)。它也是O(1)。正如你所见,它就像一个二进制位乘以8个二进制位四次。如果它也是O(1),请原谅,我怎样才能证明这一点。非常感谢。该操作仍然完全独立于输入(没有输入),因此仍然是O(1)。如果您觉得这回答了您的问题,请使用左侧的复选标记将其标记为已解决。@user3319291:如果我们说位的计数始终是常量,我不是在问这个问题吗?大O是O(1)。如果你想。。。而且我也不理解投票人,他们投票赞成这一改变……对不起,如果我们说位的计数总是恒定的,我们有四位乘以八位。这个例子中的O是什么?@samv-X的答案清楚地说明了这个例子的结果。我认为这里的复杂性不是O(1),而是O(7),因为我们有4个乘法运算和3个加法运算。