算法提炼-位运算(3)

简介: 算法提炼-位运算(3)

交换一个整数的二进制表达的奇偶位

思路:可以通过将这个整数的二进制转化为字符串类型,然后分割形成数组,利用循环将奇偶位进行交换,

这里利用位运算来进行交换

  public static  int swap(int a ){
         int ji = a&0x55555555;  //和10101010...相与 取出奇数位 然后向后移动一位编程偶数位
         int ou = a&0xaaaaaaaa; //和01010101...相与,取出偶数位,然后向左移动一位称为奇数位
         return (ji<<1)^(ou>>1); //他们两个做异运算即可获得奇偶位交换后的数
    }


相关文章
|
6月前
|
算法
算法思想总结:位运算
算法思想总结:位运算
|
6月前
|
机器学习/深度学习 存储 算法
【算法基础】常数操作 时间复杂度 选择排序 冒泡排序 插入排序 位运算
【算法基础】常数操作 时间复杂度 选择排序 冒泡排序 插入排序 位运算
|
算法
基础算法:位运算
基础算法:位运算
53 0
|
3月前
|
算法
【算法】位运算算法——消失的两个数字(困难)
【算法】位运算算法——消失的两个数字(困难)
|
3月前
|
算法
【算法】位运算算法——只出现一次的数字Ⅱ
【算法】位运算算法——只出现一次的数字Ⅱ
|
3月前
|
算法
【算法】位运算算法——判断字符是否唯一
【算法】位运算算法——判断字符是否唯一
|
3月前
|
算法
【算法】位运算算法——两整数之和
【算法】位运算算法——两整数之和
|
3月前
|
算法
【算法】位运算算法——丢失的数字
【算法】位运算算法——丢失的数字
|
3月前
|
算法
算法】位运算——常见位运算基础操作总结
算法】位运算——常见位运算基础操作总结
算法】位运算——常见位运算基础操作总结
|
5月前
|
存储 自然语言处理 算法
位运算入门及简单算法题的应用
位运算入门及简单算法题的应用
45 1
下一篇
无影云桌面