有趣的程序猿思维备忘

2019-01-12  本文已影响0人  AibWang

取两个整数的中间值

int left = 10;
int right = 15;
int mid;
mid = (left+right)/2;

上述一个简单的除以2操作,在程序猿眼中可以有多种优化:

mid = left+(right-left)/2;

这个思路同样适用于浮点数。

mid = left+((right-left)>>1);

(注意:上述要注意的一个问题是运算优先级,位运算的优先级低于加减法,故不能将上述语句错写为mid = left+(right-left)>>1

上一篇 下一篇

猜你喜欢

热点阅读