剑指offer——求1到n的和
来源:互联网 发布:软件系统模块化设计 编辑:程序博客网 时间:2024/06/14 20:16
题目描述:
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
思路:
如果不能使用上面的操作,那么只能使用递归操作了。使用递归操作的思路是让函数不断调用自己,每调用一次值就减少1,这样完成了递归操作。还有一个问题是如何实现n范围的判断呢?注意到递归调用的n的值最小是1,所以可以通过逻辑与运算,判断是否递归到1。如果递归调用到1,那么递归就结束,并返回最后的结果。
代码实现:
public class Solution { private int result = 0; public int Sum_Solution(int n){ calc(n); return result; } private boolean calc(int n){ result +=n; return n!=0&&calc(n-1); } }
0 0
- 剑指offer——求1到n的和
- 剑指Offer——求1-n的和值
- 剑指offer系列之四十六:求1到n的和
- 剑指offer-求1+2+3+..n的和
- 剑指offer——求1+2+...+n
- 剑指Offer—47—求1+2+3+...+n
- 剑指offer—求1+2+3+...+n
- 剑指Offer——n个0到n-1的数里重复的数字
- 剑指offer面试题之求1到n之间1的个数
- 剑指offer面试题 求从1到n整数中1出现的次数
- 二分法 求1到N的和
- 求1到n的和
- 求1到n的倒数和
- Q46:求1到n的和
- 剑指offer——面试题46:求1+2+...+n的多种解法
- 剑指off-递归求1到n的和
- 剑指offer-求前n项和
- 剑指offer—打印1到最大n位数
- mysql 主从备份
- 安卓中生成xml文件的方法
- leetcode.375. Guess Number Higher or Lower II
- AndroidStudio调优设置
- MYSQL性能优化之参数配置
- 剑指offer——求1到n的和
- 数据请求——严大哥
- 配置错误 不能在此路径中使用此配置节
- 内部类的访问二
- cell让分割线左对齐
- 随手记录20160721
- 爬虫服务器环境部署
- User Secrets – Storing sensitive data in ASP.NET Core projects
- linux信号量实现线程读写同步