面试题 17.01:不用加号的加法
This commit is contained in:
parent
81844b8b6e
commit
0bb2b89a67
36
src/main/java/leetcode/editor/cn/AddWithoutPlusLcci.java
Normal file
36
src/main/java/leetcode/editor/cn/AddWithoutPlusLcci.java
Normal file
@ -0,0 +1,36 @@
|
||||
//设计一个函数把两个数字相加。不得使用 + 或者其他算术运算符。
|
||||
//
|
||||
// 示例:
|
||||
//
|
||||
// 输入: a = 1, b = 1
|
||||
//输出: 2
|
||||
//
|
||||
//
|
||||
//
|
||||
// 提示:
|
||||
//
|
||||
//
|
||||
// a, b 均可能是负数或 0
|
||||
// 结果不会溢出 32 位整数
|
||||
//
|
||||
// Related Topics 位运算 数学 👍 70 👎 0
|
||||
|
||||
package leetcode.editor.cn;
|
||||
|
||||
//面试题 17.01:不用加号的加法
|
||||
public class AddWithoutPlusLcci {
|
||||
public static void main(String[] args) {
|
||||
Solution solution = new AddWithoutPlusLcci().new Solution();
|
||||
|
||||
}
|
||||
|
||||
//leetcode submit region begin(Prohibit modification and deletion)
|
||||
class Solution {
|
||||
public int add(int a, int b) {
|
||||
if (b == 0) return a;
|
||||
return add(a ^ b, (a & b) << 1);
|
||||
}
|
||||
}
|
||||
//leetcode submit region end(Prohibit modification and deletion)
|
||||
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
<p>设计一个函数把两个数字相加。不得使用 + 或者其他算术运算符。</p>
|
||||
|
||||
<p><strong>示例:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong> a = 1, b = 1
|
||||
<strong>输出:</strong> 2</pre>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>a</code>, <code>b</code> 均可能是负数或 0</li>
|
||||
<li>结果不会溢出 32 位整数</li>
|
||||
</ul>
|
||||
<div><div>Related Topics</div><div><li>位运算</li><li>数学</li></div></div><br><div><li>👍 70</li><li>👎 0</li></div>
|
Loading…
Reference in New Issue
Block a user