不让你用“+”,还能算出两数之和?这道LeetCode经典题暴露了程序员对底层原理的理解深度

不让你用“+”,还能算出两数之和?这道LeetCode经典题暴露了程序员对底层原理的理解深度

不让你用“+”,还能算出两数之和?这道LeetCode经典题暴露了程序员对底层原理的理解深度

大家好,我是Echo_Wish。

前几天有位读者给我留言:

“为什么面试官总喜欢问一些奇奇怪怪的问题?比如两个整数相加,不让用 + 和 - 运算符,这有什么意义?”

说实话。

第一次看到这道题的时候,我也是这个反应。

两个数相加不用“+”?

这不就像吃火锅不让用筷子一样离谱吗?

但后来随着工作经验越来越多,我发现:

这道题考察的根本不是加法,而是你是否真正理解计算机是如何完成加法运算的。

今天咱们就聊聊LeetCode经典题:

两整数之和(Sum of Two Integers)

题目非常简单:

给定两个整数 a 和 b。

要求:

不能使用 + 和 - 运算符 返回两数之和

例如:

输入: a = 1 b = 2 输出: 3

再比如:

输入: a = 5 b = 7 输出: 12