如何迭代从所有可能的b位数组中选择n个b位数组的所有方式?

问题描述 投票:1回答:1

2^b个b位数组。选择2^b b位数组有“ n选择n”的不同方法。我想遍历所有“ 2^b选择n”的不同选择n b位数组的方式。显然,只有在bn都较小的情况下,这才可能在现实的时间范围内进行。

我该怎么用朱莉娅来做?

julia combinatorics
1个回答
0
投票

这是使用b = 3n = 2bitstring()combinations()中的Combinatorics.jl函数的示例:

julia> using Combinatorics

julia> r = 0:2^3-1
0:7

julia> b = bitstring.(r)
8-element Array{String,1}:
 "0000000000000000000000000000000000000000000000000000000000000000"
 "0000000000000000000000000000000000000000000000000000000000000001"
 "0000000000000000000000000000000000000000000000000000000000000010"
 "0000000000000000000000000000000000000000000000000000000000000011"
 "0000000000000000000000000000000000000000000000000000000000000100"
 "0000000000000000000000000000000000000000000000000000000000000101"
 "0000000000000000000000000000000000000000000000000000000000000110"
 "0000000000000000000000000000000000000000000000000000000000000111"

julia> combs = combinations(b, 2);

julia> foreach(println, combs)
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000001"]
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000010"]
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000011"]
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000100"]
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000101"]
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000110"]
["0000000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000111"]
["0000000000000000000000000000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000000010"]
["0000000000000000000000000000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000000011"]
["0000000000000000000000000000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000000100"]
["0000000000000000000000000000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000000101"]
["0000000000000000000000000000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000000110"]
["0000000000000000000000000000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000000111"]
["0000000000000000000000000000000000000000000000000000000000000010", "0000000000000000000000000000000000000000000000000000000000000011"]
["0000000000000000000000000000000000000000000000000000000000000010", "0000000000000000000000000000000000000000000000000000000000000100"]
["0000000000000000000000000000000000000000000000000000000000000010", "0000000000000000000000000000000000000000000000000000000000000101"]
["0000000000000000000000000000000000000000000000000000000000000010", "0000000000000000000000000000000000000000000000000000000000000110"]
["0000000000000000000000000000000000000000000000000000000000000010", "0000000000000000000000000000000000000000000000000000000000000111"]
["0000000000000000000000000000000000000000000000000000000000000011", "0000000000000000000000000000000000000000000000000000000000000100"]
["0000000000000000000000000000000000000000000000000000000000000011", "0000000000000000000000000000000000000000000000000000000000000101"]
["0000000000000000000000000000000000000000000000000000000000000011", "0000000000000000000000000000000000000000000000000000000000000110"]
["0000000000000000000000000000000000000000000000000000000000000011", "0000000000000000000000000000000000000000000000000000000000000111"]
["0000000000000000000000000000000000000000000000000000000000000100", "0000000000000000000000000000000000000000000000000000000000000101"]
["0000000000000000000000000000000000000000000000000000000000000100", "0000000000000000000000000000000000000000000000000000000000000110"]
["0000000000000000000000000000000000000000000000000000000000000100", "0000000000000000000000000000000000000000000000000000000000000111"]
["0000000000000000000000000000000000000000000000000000000000000101", "0000000000000000000000000000000000000000000000000000000000000110"]
["0000000000000000000000000000000000000000000000000000000000000101", "0000000000000000000000000000000000000000000000000000000000000111"]
["0000000000000000000000000000000000000000000000000000000000000110", "0000000000000000000000000000000000000000000000000000000000000111"]
© www.soinside.com 2019 - 2024. All rights reserved.