Встречается на 1% собеседований по Python
Как сделать пересечение массивов в Python
Для нахождения пересечения массивов (общих элементов) в Python можно использовать несколько подходов:
- Через преобразование в множества (эффективно, но теряет порядок и дубликаты):
python
arr1 = [1, 2, 2, 3]
arr2 = [2, 3, 4]
intersection = list(set(arr1) & set(arr2)) # [2, 3]- С использованием list comprehension (сохраняет порядок первого массива):
python
intersection = [x for x in arr1 if x in arr2]- С помощью
collections.Counter(сохраняет количество повторений):
python
from collections import Counter
counter1 = Counter(arr1)
counter2 = Counter(arr2)
intersection = list((counter1 & counter2).elements())Для больших массивов лучше использовать первый вариант, так как операции с множествами выполняются за O(1) в среднем. Если важен порядок или нужно сохранить дубликаты - подойдут другие варианты.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы