面试题46. 求1+2+...+n

来源:互联网 发布:mac图片文件夹在哪里 编辑:程序博客网 时间:2024/05/16 04:36

面试题46. 求1+2+…+n

题目描述

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

思路:

  • 不能用for和while,说明不能循环。可以用递归替代循环
  • 不能用if,else,case,说明不能用条件判断,可以用短路替代
public class Solution {    public int sum(int n) {        int result = n;        boolean b = (n > 0) && ((result += sum(n-1)) > 0);        return result;    }}

这里写图片描述

原创粉丝点击