Building the Heap while Reading the File II
Reading block saves on seek time, but it does not allow to build the heap while reading input.
In order to do so, we need to use multiple buffers: as we process the keys in one block from the file, we can simultaneously read later blocks from the file.
Question: How many buffers should be used and where should we put them?
Answer: the number of buffers is the number of blocks in the file, and they are located in sequence in the array.
Note: since building the heap can be faster than reading blocks, there may be some delays in processing.