第一我想到了用for循环去写,如下
int a=2;
for(int i=1;i<=3;i++){
a*=a;
}
基本的加减乘除运算都基于二进制位运算,用二进制如何算呢?如下:
int a=2;
for(int i=1;i<3;i++){
a=a<<1;
}
但是这样写的话复杂程度其实与用乘法差不多,那不用循环的话会简单许多。
int a=2;
a=a<<2;
这样就直接得到了结果。
第一我想到了用for循环去写,如下
int a=2;
for(int i=1;i<=3;i++){
a*=a;
}
基本的加减乘除运算都基于二进制位运算,用二进制如何算呢?如下:
int a=2;
for(int i=1;i<3;i++){
a=a<<1;
}
但是这样写的话复杂程度其实与用乘法差不多,那不用循环的话会简单许多。
int a=2;
a=a<<2;
这样就直接得到了结果。