位运算小技巧—求中位数

参考 公式1 (x & y) + ((x ^ y) >> 1) 结果时向下取整 这样求X,Y的平均值时就不会出现int或long long超出范围的情况了,并且精度不丢失 若先x+y可能会超出范围 在二分时求mid = (l + r) / 2, 用这种方法很好! 推导 因为二进制数字都是一串0和1,那么可以把整数x和y都看作是一个有很多不同的0和1组成的集合。 求这两个集合的平均值就是 交集+差集
相关文章
相关标签/搜索