假设我有一个名为int
的{{1}}变量,我想知道语句中有多少原始操作:
count
它会是3吗?因为如果你以不同的形式写出来,例如:
count++;
它具有1次读取,1次操作和1次写入。那么这意味着语句count = count + 1;
算作3个原始操作吗?
答案 0 :(得分:3)
是的,它可能被视为有3个操作。 这意味着它是一个恒定的操作数,因此对于Big O表示法,它就像只有1个操作或10个一样,只要它是常量。
答案 1 :(得分:0)
在大多数处理器(或虚拟机上,因为您使用" java"标记标记了您的问题),有一些特殊指令可以将值递增一小部分。
即。见https://en.wikipedia.org/wiki/Java_bytecode_instruction_listings - iinc
因此,我将简单增量计为1个基本操作(尽管在内部它仍然以read-increment-write的形式执行)。