最优算法100例之45-不用循环乘法求1-n的和

专栏主页:计算机专业基础知识总结(适用于期末复习考研刷题求职面试)系列文章icon-default.png?t=N7T8https://blog.csdn.net/seeker1994/category_12585732.html

题目描述

要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句。不能用循环乘法,只能用递归,关键在于如何退出递归。

题解报告

思路1:短路特性退出递归
int Sum_Solution(int n) {
      n&&(n+=Sum_Solution(n-1));
   return n; 
}
思路2:用java的异常退出递归 
public class Solution {
    public int Sum_Solution(int n) {
        return sum(n);
    }
    int sum(int n){
        try{
            int i = 1 % n;
            return n + sum(n-1);
        }
        catch(Exception e){
            return 0;
        }
    }
}

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-14 07:50:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-14 07:50:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-14 07:50:01       82 阅读
  4. Python语言-面向对象

    2024-04-14 07:50:01       91 阅读

热门阅读

  1. array和vector

    2024-04-14 07:50:01       111 阅读
  2. mybatis-plus实现数据字段加解密

    2024-04-14 07:50:01       36 阅读
  3. HTML VUE

    2024-04-14 07:50:01       36 阅读
  4. 查询电脑用户名和组信息

    2024-04-14 07:50:01       34 阅读
  5. Python数据库编程实战:sqlite3模块详解

    2024-04-14 07:50:01       42 阅读
  6. MYSQL原理学习篇简记(五)

    2024-04-14 07:50:01       39 阅读
  7. C语言执行CMD命令并隐藏CMD窗口

    2024-04-14 07:50:01       41 阅读