100以内的正整数和的计算,在java都有哪些方法
导读:今天这篇给大家分享的知识是“100以内的正整数和的计算,在java都有哪些方法”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“100以内的正整数和的计算,在java都有哪些方法”文章能帮助大家解决问...
今天这篇给大家分享的知识是“100以内的正整数和的计算,在java都有哪些方法”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“100以内的正整数和的计算,在java都有哪些方法”文章能帮助大家解决问题。方法如下:
1、暴力解法
使用for循环直接逐个求解,算法复杂度为O ( n ) O(n)O(n)
/** * p> 暴力解法/p> * @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、流式编程
同暴力解法一样,不过使用了声明式的流式编程,代码量更少并且更加的具有可读性
/** * p> 流式编程/p> * @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)
/** * p> 利用求和公式/p> * @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
以上就是关于“100以内的正整数和的计算,在java都有哪些方法”的介绍了,感谢各位的阅读,希望文本对大家有所帮助。如果想要了解更多知识,欢迎关注网络,小编每天都会为大家更新不同的知识。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 100以内的正整数和的计算,在java都有哪些方法
本文地址: https://pptw.com/jishu/654290.html