java 100以内的整数和_java计算100以内的正整数和的三种方法
方法如下:
1、暴力解法
使用for循环直接逐个求解,算法复杂度为O ( n ) O(n)O(n)
/**
*
暴力解法
* @param startInclusive
* @param endExclusive
* @return
*/
public int sumByDirect(int startInclusive, int endExclusive){
int sum = 0;
for (int i = startInclusive; i < endExclusive; i++) {
sum += i;
}
return sum;
}
2、流式编程
同暴力解法一样,不过使用了声明式的流式编程,代码量更少并且更加的具有可读性
/**
*
流式编程
* @param startInclusive
* @param endExclusive
* @return
*/
public int sumByStream(int startInclusive, int endExclusive){
return IntStream.range(startInclusive, endExclusive).sum();
}
3、利用求和公式
利用等差数列求和公式
复杂度为O ( 1 ) O(1)O(1)
/**
*
利用求和公式
* @param startInclusive
* @param endExclusive
* @return
*/
public int sumByFormula(int startInclusive, int endExclusive){
return ((startInclusive + endExclusive - 1) * (endExclusive - startInclusive) ) >> 1;
}
测试:
@Test
public void Test() {
System.out.println("sumByDirect=" + sumByDirect(1, 101));
System.out.println("sumByStream=" + sumByStream(1, 101));
System.out.println("sumByFormula=" + sumByFormula(1, 101));
}
输出结果:
sumByDirect=5050
sumByStream=5050
sumByFormula=5050
java 100以内的整数和_java计算100以内的正整数和的三种方法相关推荐
- java中doc文件转为pdf文件_java将doc文件转换为pdf文件的三种方法
标签: http://feifei.im/archives/93 ---------------------------------------------- 项目要用到doc转pdf的功能,一番go ...
- java在文件的后面添加_java 在file的尾部添加数据的两种方法总结
java 在file的尾部添加数据的两种方法总结 问题描述: 在文件的末尾追加内容 方法1:利用RandomAccessFile类 1.将randomAccessFile模式设置为rw 2将rando ...
- java除法保留两位小数_JAVA除法保留小数点后两位的两种方法
1.利用Math.round()的方法: 两个int型的数相除,结果保留小数点后两位: int a=1188; int b=93; double c; c=(double)(Math.round(a* ...
- java字符转为数字_Java 判断字符串能否转化为数字的三种方法
linux shell 常用指令 1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止 ...
- java快速寻找一个数组的最大值或最小值, min, max,三种方法
java 中 寻找一个数组中的最大值或最小,除了自己专门编写一个 min 或 max 函数外,还有几种方式方便使用. 1. 使用 stream 将一个数组放进 stream 里面,然后直接调用 str ...
- java输出链表的值_[剑指offer] 从尾到头打印链表(三种方法) java
一.每次把新遍历的链表值放到list索引为0的位置,实现逆序. public class Solution { public ArrayList printListFromTailToHead(Lis ...
- Java黑皮书课后题第7章:**7.3(计算数字的出现次数)编写程序,读取1到100之间的整数,然后计算每个数出现的次数。假定输入0表示结束
7.3(计算数字的出现次数)编写程序,读取1到100之间的整数,然后计算每个数出现的次数 题目 题目描述+运行示例 破题 法一 法二 代码 法一:硬生生解出来 法二完整代码 题目 题目描述+运行示例 ...
- 算法训练 加法运算(你的表妹正在学习整数的加法,请编写一个程序来帮助她学习。该程序调用了一个函数GetTwoInts,由它来返回两个从键盘读入的100以内的整数,然后计算这两个整数之和,并把答案显示)
问题描述 你的表妹正在学习整数的加法,请编写一个程序来帮助她学习.该程序调用了一个函数GetTwoInts,由它来返回两个从键盘读入的100以内的整数,然后计算这两个整数之和,并把答案显示出来.要求: ...
- php100以内质数求和,100以内的质数_PHP质数计算三种方法 php求100以内的质数
摘要 腾兴网为您分享:PHP质数计算三种方法 php求100以内的质数,自动刷宝,长沙银行,猿辅导,愈加等软件知识,以及cf一键刷枪,业主名录采集软件,卡乐光电,魔方虚拟光驱,掌上徐州,卡农社区,fa ...
最新文章
- 华平助广东海事局构建水上搜救应急指挥系统
- web FG interview all
- 大数据:数据大合集,你想要的这里或许会有
- 【Audio音频兴趣拓展】如何调试频响曲线?
- pyspider 爬取淘宝食品
- 什么是客户端与服务器端
- 深度学习第二次培训(BP神经网络)
- 表格的下拉放大 ----------王朋
- javaScript打气球小游戏
- 【记录】用Python webdriver图书馆抢座自动预约的正确姿势
- 基于Java实现的几何图形处理系统
- 基于Scrapy框架爬取豆瓣《复联4》影评,并生成词云
- 计算机软考网络工程师 查询,软考网络工程师怎么查询报名是否成功?
- Handler 简介
- python大赛对名_用100行Python爬虫代码抓取公开的足球数据玩(一)
- 如何让win10超时自动锁定屏幕?
- 微信小程序云开发支付
- [益智]:三个火枪手
- 微信小程序引入阿里巴巴图标库(不下载)
- JavaWeb『Vue.js』快速入门