アルファベットだけでシャッフルして先頭から順に番号割り振ればいいだけじゃね?
AAA
BB
CCCC
として
CBAAC とかなったら
前から順番に辿って番号振ってC1B1A1A2C2