IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> 《算法零基础100讲》(第43讲) 位运算 (位与) 进阶【题解】 -> 正文阅读

[数据结构与算法]《算法零基础100讲》(第43讲) 位运算 (位与) 进阶【题解】

目录

传送门

课后习题

397.整数替换

201.数字范围按位与

?最后


传送门

《算法零基础100讲》(第43讲) 位运算 (位与) 进阶_英雄哪里出来-CSDN博客按位与 运算符的进阶内容https://blog.csdn.net/WhereIsHeroFrom/article/details/120875810

课后习题

只写了两题,还都是暴力,位运算的技巧一个没用上(不会用……)

397.整数替换

397. 整数替换icon-default.png?t=LA92https://leetcode-cn.com/problems/integer-replacement/

?题目描述:

给定一个正整数?n ,你可以做如下操作:

如果?n?是偶数,则用?n / 2替换?n 。
如果?n?是奇数,则可以用?n + 1或n - 1替换?n 。
n?变为 1 所需的最小替换次数是多少?

int min(int n,int m){
    return n < m ? n : m;
}
int dfs(long n){
    if(n == 1)
        return 0;
    if(!(n & 1))
        return 1+dfs(n>>1);
    else
        return 1+min(dfs(n-1),dfs((long)(n+1)));
}

int integerReplacement(int n){  
    return dfs(n*1L);
}

看别人代码位运算用的太巧了!!!

201.数字范围按位与

201. 数字范围按位与

题目描述:

给你两个整数?left?和?right?,表示区间?[left, right]?,返回此区间内所有数字?按位与?的结果(包含?left?、right?端点)。

思路:理解不了他们那灵活的位运算,自己就只能按题目意思一个个的位与了。不过直接挨个位与最终会超时。其实大部分结果都是0的,所有判断如果中间的结果为0就可以提前退出了

int rangeBitwiseAnd(int left, int right){
    int ans = left;
    long i;
    for(i=(long)left+1;i<=right;++i){
        if(ans == 0)
            return 0;           // 一个个挨个位与 如果为0则直接返回
        else
            ans &= i;
    }
    return ans;
}

?最后

害,位运算得多补补!!!

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-12-03 13:17:15  更:2021-12-03 13:18:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/28 6:45:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码