2
Я хочу, чтобы получить декартово произведение a
, b
, c
, d
:Реализовать рубин стиль декартово произведение в Go
a = ['a1']
b = ['b1', 'b2']
c = ['c1', 'c2', 'c3']
d = ['d1']
Вот код в Ruby:
e = [b, c, d]
print a.product(*e)
Выход:
[
["a1", "b1", "c1", "d1"],
["a1", "b1", "c2", "d1"],
["a1", "b1", "c3", "d1"],
["a1", "b2", "c1", "d1"],
["a1", "b2", "c2", "d1"],
["a1", "b2", "c3", "d1"]
]
Есть ли подобный пакет или функции, которые могли бы делать продукт в Голанге? Это просто упрощенная версия, на самом деле входные данные похожи на [['a1'], ['b1', 'b2'], ['c1', 'c2', 'c3], [' d1 '] , [ 'e1', ...], ...].
Да: Три вложенный для петель. – Volker
Вы можете посмотреть [godoc.org] (https://godoc.org/) или [go-search.org] (http://go-search.org/) для пакета матриц. –