Why we use rot_size//2 as the bucket number?

Hi @Amazing_Patrick

As @gent.spah pointed out - to reduce computation. Later in step 3 rotation size becomes full rot_size.
Check this post for more details.

Cheers