剑指 Offer 64. 求1+2+…+n Posted on 2021-07-12 Edited on 2022-11-27 In 剑指 Offer Disqus: Symbols count in article: 460 Reading time ≈ 1 mins. 剑指 Offer 64. 求1+2+…+n shuai 12345678910class Solution {public: int sumNums(int n) { bool x = n > 1 && sumNums(n - 1); // n == 1时候终止递归,递归栈返回,从ret从n=1开始加上去。 此处使用逻辑符短路,代替了原本if(n <= 1) return 1; ret += n; return ret; }private: int ret = 0;}; 写法二 1234567class Solution {public: int sumNums(int n) { n && (n += sumNums(n - 1)); return n; }}; 如果没题目限制使用递归 123456789class Solution {public: int sumNums(int n) { if(n == 1) return 1; n += sumNums(n - 1); return n; }};