if we go with a min-heap solution, it’s consuming additional space and also additional O(n*log n) for fetch operations, i can understand to match with the pattern you are considering this solution. In case if getting the same question interview, can I proceed with the below solution? and please guide which is optimal.
- sort array O(n*log n)
- find elements in given k1 and k2 range (O(k)
Total: Time Complexity : O(k+n*log n)
& no additional space required.
def find_sum_of_elements(array,start,end): array.sort() result=0 for i in range(start,end-1): result+=array[i] return result