У меня есть несколько векторов или списков векторов и хотелось бы составить все возможные конкатенации их записей. Вот пример:Все возможные комбинации элементов/векторов/список векторов (декартово произведение)
a1=4;
a2=[1,6;1,9;6,9];
a3=[2;7];
Это все должно привести к:
[4,1,6,2]
[4,1,6,7]
[4,1,9,2]
[4,1,9,7]
[4,6,9,2]
[4,6,9,7]
Я думаю, что мой вопрос похож на этот: Generate all possible combinations of the elements of some vectors (Cartesian product) но я на самом деле не в состоянии адаптировать ответы на мою проблему.
EDIT: Еще раз спасибо за ответ и исправления! Как уже сказал стакан, его работы похожи на обаяние в октаве. Теперь я также хотел бы, чтобы он был немного более гибким для произвольного числа a
, объединенного в массив ячеек (или любую другую структуру, которая лучше соответствовала бы потенциальному решению). Я работал с составом строки, а затем eval
. Но для меня это не очень элегантно. Возможно ли, чтобы он был более ... алгоритмическим?
Вы имеете в виду «6,9» на последних двух выходах? –
@ LuisMendo Очень хорошо сказать «да» ... –