剑指offer 72. 求1+2+…+n

简介: 剑指offer 72. 求1+2+…+n

题目描述

求 1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case 等关键字及条件判断语句 (A?B:C)。


数据范围

1≤n≤1000。

样例

输入:10
输出:55


方法一:递归 O(n)


由于题目要求不能用乘除法、for、while、if、else、switch、case 等关键字及条件判断语句 (A?B:C) 。所以这道题我们用递归的方法来做,虽然此题代码很短,但为了更直观的理解,我还是用图解形式进行讲解,假设 n = 5


280eb47ebf6b4864aa0362d708b63068.png


class Solution {
public:
    int getSum(int n) {
        if (!n)  return 0;
        return n + getSum(n - 1);
    }
};

欢迎大家在评论区交流~

目录
相关文章
|
2天前
|
机器学习/深度学习 Java
【剑指offer】- 求1+2+3+...+n -47/67
【剑指offer】- 求1+2+3+...+n -47/67
|
2天前
剑指Offer(第二版)03
剑指Offer(第二版)03
11 0
|
2天前
剑指Offer(第二版)04
剑指Offer(第二版)04
7 0
|
2天前
剑指Offer(第二版)05
剑指Offer(第二版)05
10 0
|
2天前
剑指Offer(第二版)10-2
剑指Offer(第二版)10-2
12 0
|
2天前
剑指Offer(第二版)11
剑指Offer(第二版)11
11 0
|
2天前
剑指Offer(第二版)06
剑指Offer(第二版)06
11 0
|
存储 JSON 机器人
剑指offer(60-67题)详解
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
78 0
剑指offer(60-67题)详解
|
存储 Java
剑指offer(11-25题)详解
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。。
106 0
剑指offer(11-25题)详解
|
算法
剑指offer(26-33题)详解
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向
88 0
剑指offer(26-33题)详解