I removed the code to break the array into chunks whose size is a
power of two. This didn't make any significant difference in the
speed of the algorithm, but it does considerably simplify the code.
The method 'findBannedWords' goes away, and 'run' becomes
def run()
if @words.empty?
[]
else
findBanned(@words)
end
end
(And the comments on the other two methods about the size of their
input being a power of two also go away.)
Wayne