【JZ47】求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
知识点:逻辑运算符
难度:☆java
直接利用 for 计算从 1 加到 n。web
package pers.klb.jzoffer.medium; /** * @program: JzOffer2021 * @description: 求1+2+3+...+n * @author: Meumax * @create: 2020-08-12 20:00 **/ public class SumOneToN { public int Sum_Solution(int n) { return n * (n + 1) / 2; } }
时间复杂度:O(1)
空间复杂度:O(1)svg
package pers.klb.jzoffer.medium; /** * @program: JzOffer2021 * @description: 求1+2+3+...+n * @author: Meumax * @create: 2020-08-12 20:00 **/ public class SumOneToN { public int Sum_Solution(int n) { int sum = 0; for (int i = 1; i <= n; i++) { sum += i; } return sum; }
时间复杂度:O(N)
空间复杂度:O(1)spa
没什么好说的,不知道这种题为何会在剑指offer里面。code