BAEL3455 Max subarray problem

This commit is contained in:
chirag d 2019-12-08 18:47:23 +05:30
parent 9a8aadf125
commit c2b71c2d33
4 changed files with 19 additions and 18 deletions

View File

@ -1,7 +1,12 @@
package com.baeldung.algorithms.subarray.maximum;
package com.baeldung.algorithms.maximumsubarray;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class BruteForceAlgorithm {
private Logger logger = LoggerFactory.getLogger(BruteForceAlgorithm.class.getName());
public int maxSubArray(int[] arr) {
int size = arr.length;
@ -23,7 +28,7 @@ public class BruteForceAlgorithm {
}
}
}
System.out.println("Found Maximum Subarray between " + start + " and " + end);
logger.info("Found Maximum Subarray between {} and {}", start, end);
return maximumSubArraySum;
}

View File

@ -1,7 +1,12 @@
package com.baeldung.algorithms.subarray.maximum;
package com.baeldung.algorithms.maximumsubarray;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class KadaneAlgorithm {
private Logger logger = LoggerFactory.getLogger(BruteForceAlgorithm.class.getName());
public int maxSubArraySum(int[] arr) {
int size = arr.length;
@ -23,7 +28,7 @@ public class KadaneAlgorithm {
end = i;
}
}
System.out.println("Found Maximum Subarray between " + start + " and " + end);
logger.info("Found Maximum Subarray between {} and {}", start, end);
return maxSoFar;
}
}

View File

@ -1,24 +1,19 @@
package com.baeldung.algorithms.subarray.maximum;
package com.baeldung.algorithms.maximumsubarray;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
class BruteForceAlgorithmUnitTest {
class BruteForceAlgorithmTest {
@Test
void givenArrayWithNegativeNumberWhenMaximumSubarrayThenReturns6() {
//given
int[] arr = new int[]{-3, 1, -8, 4, -1, 2, 1, -5, 5};
//when
BruteForceAlgorithm algorithm = new BruteForceAlgorithm();
int maximumSum = algorithm.maxSubArray(arr);
//then
assertEquals(6, maximumSum);
}
}

View File

@ -1,23 +1,19 @@
package com.baeldung.algorithms.subarray.maximum;
package com.baeldung.algorithms.maximumsubarray;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
import static org.junit.jupiter.api.Assertions.assertEquals;
class KadaneAlgorithmUnitTest {
class KadaneAlgorithmTest {
@Test
void givenArrayWithNegativeNumberWhenMaximumSubarrayThenReturns6() {
//given
int[] arr = new int[]{-3, 1, -8, 4, -1, 2, 1, -5, 5};
//when
KadaneAlgorithm algorithm = new KadaneAlgorithm();
int maxSum = algorithm.maxSubArraySum(arr);
//then
assertEquals(6, maxSum);
}
}