>>是右移运算符。
假设x=5,那么x的二进制为0101,x>>1表示x右移1位,即把最右边一位的1删掉,变为010,此时x=2;
仍然设x=5,二进制0101,x>>2表示x右移2位,把最右边两位的01去掉,变为01,此时x=1。
x>>=1等价于x=x>>1,跟x+=1等价于x=x+1是一个道理
eg: x >>= 1 相当于 x = x / (21);
eg: x>>= 2 相当于 x=x/(22)
>>是右移运算符。
假设x=5,那么x的二进制为0101,x>>1表示x右移1位,即把最右边一位的1删掉,变为010,此时x=2;
仍然设x=5,二进制0101,x>>2表示x右移2位,把最右边两位的01去掉,变为01,此时x=1。
x>>=1等价于x=x>>1,跟x+=1等价于x=x+1是一个道理
eg: x >>= 1 相当于 x = x / (21);
eg: x>>= 2 相当于 x=x/(22)
下一篇:服务器重启的命令
左移只有一种:规则:丢弃最高位,往左移位,右边空出来的位置补0右移有两种:1. 逻辑右移:丢弃最低位,
逻辑位移和算术位移
一、问题描述:设以一个算法,实现将一维数组中的元素循环右移k位,要求只用一个元素大小的辅助空间。
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M