文章目录

  • 题目描述
  • 思路 & 代码
    • 二刷

题目描述

  • 讲道理,感觉算有点难度的题目了= =,还是需要时不时看看。

思路 & 代码

  • 正负数情况可以不考虑(补码)
  • 核心:加法 = 进位和 + 非进位和
  • 关于位运算符的选择,leetcode 题解区中 Krahets 大佬的图写很好⬇️
class Solution {// 用递归来做,会很好理解~// 加法 = 进位和 + 非进位和// 进位和 = & << ,非进位和 = ^// 负数考虑:没关系,补码优势在于正负数不需要特殊考虑public int add(int a, int b) {// 进位和为0时,结束if(b == 0){return a;}// (非进位和,进位和)return add(a ^ b, (a & b) << 1);}
}
  • 无注释版
class Solution {public int add(int a, int b) {if(b == 0){return a;}return add(a ^ b, (a & b) << 1);}
}

二刷

  • 核心:递归 + 位运算
  • 思路:记录结果表,推出结论
class Solution {public int add(int a, int b) {if(b == 0) {return a;}return add(a ^ b, (a & b) << 1);}
}

【LeetCode笔记】剑指 Offer 65. 不用加减乘除做加法(Java、位运算、二刷)相关推荐

  1. 剑指 Offer 65. 不用加减乘除做加法(位运算、递归、迭代)

    一.题目 剑指 Offer 65. 不用加减乘除做加法 题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用 "+"."-"."*" ...

  2. 【LeetCode】剑指 Offer 65. 不用加减乘除做加法

    [LeetCode]剑指 Offer 65. 不用加减乘除做加法 文章目录 [LeetCode]剑指 Offer 65. 不用加减乘除做加法 一.位运算 一.位运算 本题考察对位运算的灵活使用,即使用 ...

  3. java 加法不用_【Java】 剑指offer(65) 不用加减乘除做加法

    本文参考自<剑指offer>一书,代码采用Java语言. 题目 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.×.÷四则运算符号. 思路 对数字做运算,除了四则运算外,只剩下位 ...

  4. 0位运算/数学简单 剑指 Offer 65. 不用加减乘除做加法

    剑指 Offer 65. 不用加减乘除做加法 描述 写一个函数,求两个整数之和,要求在函数体内不得使用 "+"."-"."*"." ...

  5. leetcode每日一题第三十二天-剑指 Offer 65. 不用加减乘除做加法(easy??middle了吧)

    前言 通过leetcode记录自己每天坚持刷题,以此监督自己的学习.不能放假了就懈怠

  6. 剑指 Offer 65. 不用加减乘除做加法

    题目链接: 力扣https://leetcode.cn/problems/bu-yong-jia-jian-cheng-chu-zuo-jia-fa-lcof/ [分析]对于两个二进制的加法,他们的本 ...

  7. 剑指 Offer 65. 不用加减乘除做加法(位运算,计组原理:补码、加法器)

    一.基础知识 做这题需要用到计算机组成原理的基础知识:二进制的表示以及加法器. 简要提下知识点,最好再去研究下来龙去脉,加深理解. (1)二进制加法 a b 非进位和s 进位c 0 0 0 0 0 1 ...

  8. 剑指Offer - 面试题65. 不用加减乘除做加法(位运算,要看哦)

    1. 题目 写一个函数,求两个整数之和,要求在函数体内不得使用 "+"."-"."*"."/" 四则运算符号. 示例: ...

  9. 剑指offer:不用加减乘除做加法

    题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. 解题思路 class Solution { public:int Add(int num1, int num2 ...

最新文章

  1. 集成测试_渐增与非渐增模式优缺点
  2. CSS基础教程(企业内部培训)
  3. jQuery 7 节点遍历
  4. 1 数列分块入门_线性代数入门——利用分块矩阵简化矩阵乘法运算
  5. api签名_使用签名保护基于HTTP的API
  6. 畅通工程续(HDU-1874)
  7. 32位的PLSQL登录64位的ORA11g有关问题
  8. window64位版本的secoclient工具下载(secoclient-win-64-7.0.2.26.exe)
  9. k3c最新官改非常稳定了_2020国庆过后玉米价格最新行情走势
  10. 实时系统性能测试指标及方法
  11. 台式机标准计算机配置清单,台式机组装,教您组装电脑高配置清单
  12. svg 填充图案_设计师:从英雄图案中获取免费的SVG背景图案
  13. 在Kotlin中@Suppress可能取到的值
  14. java四大名著知乎_《西游记》是否被高估了?四大名著该如何排名?
  15. 绝地求生显示器测试软件,《绝地求生大逃杀》1728*1080分辨率怎么设置?自定义分辨率设置方法分享...
  16. Android 内存被异常回收后直接重启APP
  17. Python基础06-数据结构
  18. 评测TFN F4 高性能OTDR光时域反射仪性能
  19. 直流电机系统模型识别
  20. SwiftUI AR教程之RealityKit 中将 AR 内容锚定到面部(教程含源码)

热门文章

  1. python indices_python numpy triu_indices函数
  2. 6种java垃圾回收算法_被说烂了的Java垃圾回收算法,我带来了最“清新脱俗”的详细图解...
  3. dir结构体 linux_Linux下DIR,dirent,stat等结构体详解
  4. python怎么做数据分析_如何用python进行数据分析
  5. seaborn画图设置横纵坐标标签
  6. 神经网络中Batch和Epoch之间的区别
  7. OpenCV学习笔记(十四):重映射:remap( )
  8. 最长升序子串1231
  9. 单元格格式_单元格格式的用法你知道吗~~
  10. 大学计算机在线答题,大学计算机基础网上考试答题卷理论部分(含答案)