Встречается на собеседованиях • сегодня
Как сделать пересечение массивов в 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
интервью вопросы и ответы