虽然我知道如何生成大小为n,恰好有k个位设置为1的所有(n choose k)位字符串,但我很难找到一个双射,它以介于1和(n choose k)之间的数字i作为输入,并以任意顺序输出那种类型的第i个向量。
显然,可以简单地枚举该向量列表中的所有内容,然后输出列表的第i个条目,但不幸的是,这种方法对我的环境要求内存太高。
编辑:此外,它应该是有效的计算,每次调用双射时计算所有向量的列表也不是一个选项。
显然,可以简单地枚举该向量列表中的所有内容,然后输出列表的第i个条目,但不幸的是,这种方法对我的环境要求内存太高。
编辑:此外,它应该是有效的计算,每次调用双射时计算所有向量的列表也不是一个选项。