Как создать новый массив, содержащий комбинации каждого элемента из первого массива со всеми элементами из второго массива?

Как создать массив С из массивов A и B, чтобы C содержал комбинации строк из A и B, как показано в примере?
  • 28 декабря 2023 г. 6:17
Ответы на вопрос 2
Вам понадобится два вложенных цикла, чтобы пройти через все комбинации элементов из первого и второго массивов.

Пример кода на языке Python:

```
A = ["a", "b", "c"]
B = ["x", "y", "z"]

C = []

for i in A:
    for j in B:
        C.append(i + j)

print(C)
```

Вывод:
```
['ax', 'ay', 'az', 'bx', 'by', 'bz', 'cx', 'cy', 'cz']
```

В данном примере создается пустой массив C. Затем происходит первый цикл по элементам массива A. Для каждого элемента из A происходит второй цикл по элементам массива B. В каждой итерации внутреннего цикла происходит соединение элементов из A и B (например, "a" + "x" даст "ax"), и результат добавляется в массив C с помощью метода `append()`. В итоге, массив C будет содержать все возможные комбинации строк из A и B.
Выглядит как декартово произведение только где элементы это массивы с последующим распремлением. 

На питоне что то вроде этого
Прямой функции в numpy нету плюс у тебя данные не однородные то есть тебе при создании numpy массива придется указать параметр dtype='object', что означает python объект (до свидания скорость). Посмотри реализации в интернете, но массивы не однородные, так что толку по скорости не будет.
Похожие вопросы