Как эффективнее всего получить количество уникальных значений в большом списке `ids`?
Pythonjuniormiddle
Проверяет знание Python и pandas для анализа данных.
Pythonструктуры-данныхsetуникальные
Варианты ответа
перебрать список и делать `if x not in seen: seen.append(x)`
len([x for x in ids if ids.count(x) == 1])
sorted(ids), затем посчитать соседние различающиеся элементы
len(set(ids)) — set строится за O(n) на хешах, дубли отсекаются
Как разобрать этот вопрос на собеседовании
Подумай, какая структура данных и какой инструмент pandas решают задачу с наименьшей сложностью: векторизация вместо циклов, groupby/merge вместо ручных склеек, корректная работа с NaN и типами. Интервьюер смотрит на читаемость кода и на то, понимаешь ли ты, что происходит «под капотом» — копия или вью, сложность операции, утечки памяти на больших данных.
Это базовый вопрос — на собеседовании его задают как разминку и фильтр, поэтому важно ответить уверенно и без заминок.
Тема вопроса — «Python». Чтобы подготовиться к похожим задачам, отрабатывай их на практике: python-тренажёр помогает довести навык до автоматизма, а раздел вопросов — увидеть формулировки, которые реально встречаются на интервью аналитика данных.
Разбор ответа
Подробный разбор с объяснением «почему правильный ответ верный» и почему остальные неверны — после регистрации.
3000+ вопросов с разбором, quiz-режим с проверкой, AI-собес и подготовка к интервью аналитика.