剑指offer(Java实现) 求1+2+3+…+n
题目描述:
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
思路:
题目要求不使用 if,则异常输入以边界条件的判断可以使用逻辑与和boolean类型进行处理;
题目要求不使用 for、while等循环语句,则可以使用递归替代循环,进行累加。
代码实现:
public class Solution {public int Sum_Solution(int n) {int sum = n;boolean result = (n > 0) && ((sum += Sum_Solution(n-1)) > 0);return sum;}
}
(n > 0)
用于判断输入异常及边界条件,例如当 n = -1
时,result = false
,sum = -1
,返回最终结果;
当到达边界时,即n = 0
时,result = false
,sum = 0
,返回当前结果,继续递归,进行累加。
剑指offer(Java实现) 求1+2+3+…+n相关推荐
- 剑指offer java版 test3—从尾到头打印链表
标题:剑指offer java版 test3-从尾到头打印链表 题目:输入一个链表,按链表从尾到头的顺序返回一个ArrayList. 解答:知识不够全面,用ArrayList做的 但是看到大佬们还可以 ...
- 牛客网剑指offer——Java题解
剑指offer JZ1 二维数组中的查找 题目描述 在一个二维数组array中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这 ...
- 剑指offer最新版_剑指Offer——Java版本(持续更新)
0 前言 邻近校招,算法要命!!! 本文为研究剑指Offer过程中的笔记,整理出主要思路以及Java版本题解,以便记忆和复习. 参考整理来自<剑指Offer 第二版>. 特别注意,对每道题 ...
- 牛客网剑指offer java 全部题解
经过数月的努力,终于更完了牛客网的66道剑指offer,以下的顺序和大家在牛客网的顺序是一样的(排序也花了不少时间),希望对大家找工作/提高算法能力能起到些许帮助. 每天一道剑指offer-二维数组中 ...
- [剑指offer][JAVA]面试题第[64]题[求1+2+…+n][逻辑运算符]
[问题描述][中等] 求 1+2+...+n ,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C).输入: n = 3 输出: 6 [解 ...
- 剑指offer java版 test42—找出和为S的两个数,左右夹逼法(双指针法)
前言:受上一题的启发,这题自己也编出来了.在碰到这种有序数列的时候,经常会用到双指针法,一个指左边,一个指右边,然后依照规则移动,增加或缩小范围.很实用. 题目: 输入一个递增排序的数组和一个数字S, ...
- 剑指Offer——Java答案
第二章 面试需要的基础知识 数组 - 二维数组中查找 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数, ...
- [剑指offer][JAVA]面试题第[31]题[栈的压入、弹出序列][栈]
[问题描述][中等] 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4 ...
- [剑指offer][JAVA]面试题第[16]题[数值的整数次方][位运算][二分法]
[问题描述][中等] 实现函数double Power(double base, int exponent),求base的exponent次方.不得使用库函数,同时不需要考虑大数问题.示例 1:输入: ...
- [剑指offer][JAVA]面试题[51][数组中的逆序对][归并排序]
[问题描述]面试题51.数组中的逆序对 (困难) 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数. 示例 1:输入: [7, ...
最新文章
- java调用存储过程
- asp.net模版页面的高级应用
- spring 多数据源动态切换
- 8个神奇的网页动态流体布局及其做法揭秘
- 房价预测 search Search 中对数据预处理的学习
- scrum–yesterday once more
- 一家踏实做产品,在疫情下销售增速仍达35%的公司,年报长啥样?
- 50+企业数字化转型、管理的方法论,这本书到底有什么干货?
- redis各数据结构的使用场景
- Pytorch中的强化学习
- Oracle 单实例 迁移到 RAC 实例 -- 使用导出导入方法
- Spring Cloud随记----远程配置文件资源库的建立-涉及一些简单的git操作
- STM32F072RB 实作笔记(一)- Keil 安装
- WiFi路由的PIN码与常见问题处理破解教程
- 【微信小程序宝典】从零开始做微信小程序开发
- CUDA11.4、CUDNN、Pytorch安装
- Linux的10个彩蛋
- SNIPER python3.5环境配置成功记录
- 去中心化资产的去中心化市场
- 【JMeter】BeanShell读写Redis
热门文章
- 安装启动gui卡住_为什么Windows 10升级安装卡住了,原因在这
- 搜狗输入法怎么切换为繁体_搜狗这次太良心了,必须强推这工具!
- windows服务器安全设置之提权篇
- Win2008支持PowerShell设置方法
- Linux下ssh登录速度慢的解决办法
- [转]深夜无人的街道
- Go语言实例化结构体——为结构体分配内存并初始化
- [HNOI2009]最小圈 (二分答案+负环)
- vue 使用sass 和less
- Delphi东京版FireDAC连接MSSQL2000提示对象名 'SYS.DATABASES' 无效