in reply to Re: Re: brainteaser: splitting up a namespace evenly
in thread brainteaser: splitting up a namespace evenly

A quick way to determine the distribution of the last two digits is to create a hash table where the hash keys are each two digit combination and the each hash value is the total count of that combination. IE: The first time the script comes across '45' it uses exists() to check for the key, if the key is there then it ++ the value. If the key is not there then it creates the key and starts the value at 1.

The end result might look something like:
$hash = [
        '01' => 302,
        '02' => 404,
        '23' => 1002

        ... and so on 

This would at least allow you to grasp the distribution of the data. I would definately use this sort of approach (ordering by the last n digits) because it allows for new data to be added without resizing any of the other directories.
  • Comment on Re: Re: Re: brainteaser: splitting up a namespace evenly