zoukankan      html  css  js  c++  java
  • 位运算的特殊运用

    位运算的特殊运用

    位运算主要有。&。|。~,^等几种。这几种在编程方面能极大地优化程序,所以掌握他们势在必行,所以就总计一下。

    &:

    主要能够用来求某数的当中一个二进制位。经常使用的有求某个数转化为二进制后的最后一位。

    能够用 a&(-a)进行高速求解

    |:

    能够将某个数转化为二进制后的某些位设为1,通过该数与想要对应位数为1其它位为零的数进行或运算就可以

    ~:

    能够间接转化某个数:如:求32位的最大值。

    能够用~0u=2^32-1;

    ^:

    异或则能够用来不借助中间变量来实现两个数的交换。还能够将一个数的某些位取反

    比如:交换a和b 能够用 a=a^b;b=b^a;a=a^b;(另一种方法。就是a=a+b;b=a-b;a=a-b;也能实现不借助中间变量来实现两者的转化)。 

     

  • 相关阅读:
    高一下期末考试划水记
    BZOJ 1053
    积性函数与狄利克雷卷积(未完待更)
    Contest Hunter 3101
    POJ2689
    3.17爆零赛
    全概率公式
    矩阵快速幂
    模板练习
    _rqy's Code Style for OI
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/6849891.html
Copyright © 2011-2022 走看看