草庐IT

00001112222

全部标签

java - Java 中的重复排列(字符串的形式为 : 00001112222)

我有000011122222形式的字符串。即连续数字重复随机编号。次。其他一些示例可能是:00111222233330122200011234444001122222等等。我知道,对于字符串01222,总共有5!/3!的排列是可能的。我需要为每个这样的字符串生成所有这些排列。我曾尝试通过各种方法生成排列。一种是生成所有可能的排列(就像没有重复的字符串一样),但由于我要使用的字符串可能非常大,这会浪费时间生成太多冗余排列。其次,我尝试将数字放在字符数组的随机索引处,该索引等于字符串的大小,并在数字计数与输入字符串相同时终止循环。然而,这样我浪费了很多内存,也占用了很多时间。我需要一种有效