不用加减乘除算加法
題目
??寫一個函數,求兩個整數之和,要求在函數體內不得使用+、-、*、/四則運算符號。
思路
(一)首先看我們平時的十進制是如何做的: 6+5 ,三步曲!!!
(二)我們可以用三步曲的方式計算二進制值相加: 5----0101,6-0110
代碼
class Solution { public:int Add(int num1, int num2){int tmp = 0;while(num2){tmp = num2 ^ num1; //用于存儲num1+num2的值num2 = (num2 & num1) << 1; //用于存儲進位值num1 = tmp;}return num1;} };總結
- 上一篇: 杨辉三角变形(高效解析)
- 下一篇: scrapy 模拟登陆