MCPcopy Index your code
hub / github.com/subbarayudu-j/TheAlgorithms-Python / sort

Method sort

sorts/external-sort.py:114–123  ·  view source on GitHub ↗
(self, filename, sort_key=None)

Source from the content-addressed store, hash-verified

112 self.block_size = block_size
113
114 def sort(self, filename, sort_key=None):
115 num_blocks = self.get_number_blocks(filename, self.block_size)
116 splitter = FileSplitter(filename)
117 splitter.split(self.block_size, sort_key)
118
119 merger = FileMerger(NWayMerge())
120 buffer_size = self.block_size / (num_blocks + 1)
121 merger.merge(splitter.get_block_filenames(), filename + '.out', buffer_size)
122
123 splitter.cleanup()
124
125 def get_number_blocks(self, filename, block_size):
126 return (os.stat(filename).st_size / block_size) + 1

Callers 9

mainFunction · 0.95
splitMethod · 0.45
find_neighborhoodFunction · 0.45
kruskFunction · 0.45
searchFunction · 0.45
getFrequencyOrderFunction · 0.45
checkValidKeyFunction · 0.45
sol1.pyFile · 0.45
mainFunction · 0.45

Calls 8

get_number_blocksMethod · 0.95
splitMethod · 0.95
mergeMethod · 0.95
get_block_filenamesMethod · 0.95
cleanupMethod · 0.95
FileSplitterClass · 0.85
FileMergerClass · 0.85
NWayMergeClass · 0.85

Tested by

no test coverage detected