Find minimum sum subarray of given size k
by Alex Myronov
JavaScript
const minSum = (arr, size) => {
let sum = 0
let minSum = Infinity
let minLastIndex = 0
for (let i = 0; i < arr.length; i++) {
if (i >= size) {
if (sum < minSum) {
minSum = sum
minLastIndex = i - 1
}
sum -= arr[i - size]
}
sum += arr[i]
}
return {
minSum,
minLastIndex,
minStartIndex: minLastIndex - size + 1
}
}
console.log(minSum([10, 22, 4, 2, 5, 6, 3, 8, 1], 3))