Die Methode lautet wie folgt: 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; }
Komplexität ist O ( 1 ) O(1)O(1)
/** * <p>流式编程</p> * @param startInclusive * @param endExclusive * @return */ public int sumByStream(int startInclusive, int endExclusive){ return IntStream.range(startInclusive, endExclusive).sum(); }
/** * <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)); }
Verwandte Empfehlungen:
Erste Schritte mit JavaDas obige ist der detaillierte Inhalt vonDrei Möglichkeiten, die Summe positiver Ganzzahlen innerhalb von 100 in Java zu berechnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!