Skip to content

Commit 2830913

Browse files
committed
Refactor AbsoluteMax.getMaxValue to improve
efficiency and code coverage
1 parent 8db2c1f commit 2830913

File tree

1 file changed

+6
-16
lines changed

1 file changed

+6
-16
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
package com.thealgorithms.maths;
2-
31
public final class AbsoluteMax {
4-
private AbsoluteMax() {
5-
}
2+
private AbsoluteMax() {}
63

74
/**
85
* Finds the absolute maximum value among the given numbers.
@@ -15,18 +12,11 @@ public static int getMaxValue(int... numbers) {
1512
if (numbers == null || numbers.length == 0) {
1613
throw new IllegalArgumentException("Numbers array cannot be empty or null");
1714
}
18-
19-
int maxPositive = Integer.MIN_VALUE;
20-
int maxNegative = Integer.MIN_VALUE;
21-
15+
16+
int max = Integer.MIN_VALUE;
2217
for (int number : numbers) {
23-
if (number >= 0 && number > maxPositive) {
24-
maxPositive = number;
25-
} else if (number < 0 && Math.abs(number) > Math.abs(maxNegative)) {
26-
maxNegative = number;
27-
}
18+
max = Math.max(max, Math.abs(number));
2819
}
29-
30-
return Math.max(maxPositive, maxNegative);
20+
return max;
3121
}
32-
}
22+
}

0 commit comments

Comments
 (0)