写一个函数,求两个整数之和,要求在函数体内不得使用 +、-、×、÷ 四则运算符号。

class Solution {

public:

int add(int num1, int num2){

int res = 0;

int Cin = 0;

int tmp = 1;

for(int i = 0;i<32;i++){

int a = num1 & tmp;//取得num1和num2的第i位的值

int b = num2 & tmp;

int S = (a^b)^Cin;//异或得到第i位的输出值

int Cout = (a&b)|(a&Cin)|(b&Cin);//与操作得到进位

Cin = Cout << 1;//传递到下一位的进位输入

tmp <<= 1;

res += S;//将第i位的输出值S加到res中

}

return res;

}

};

相关推荐
职略1 小时前
负载均衡类型和算法解析
java·运维·分布式·算法·负载均衡
A22741 小时前
LeetCode 196, 73, 105
java·算法·leetcode
阿里巴巴P8资深技术专家2 小时前
Java常用算法&集合扩容机制分析
java·数据结构·算法
zengson_g3 小时前
当需要对大量数据进行排序操作时,怎样优化内存使用和性能?
java·数据库·算法·排序算法
爱上电路设计3 小时前
有趣的算法
开发语言·c++·算法
Kerry_66 小时前
2024年江苏省研究生数学建模科研创新实践大赛C题气象数据高精度融合技术研究论文和代码分析
算法·数学建模·matlab·数据分析
风啊雨6 小时前
刷题Day44|188.买卖股票的最佳时机IV、309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费
算法
yachihaoteng6 小时前
Studying-代码随想录训练营day27| 贪心算法理论基础、455.分发饼干、376.摆动序列、53.最大子序和
c++·算法·leetcode·贪心算法
逸群不凡6 小时前
C++|哈希应用->布隆过滤器
开发语言·数据结构·c++·算法·哈希算法
LNTON羚通6 小时前
视频共享融合赋能平台LnyonCVS国标视频监控平台包含哪些功能
大数据·网络·人工智能·算法·音视频