Встречается на собеседованиях • сегодня

Умеешь ли оценивать время выполнения задач

Да, могу оценить время выполнения задач, используя Big O нотацию. Основные сложности:

  • O(1) – константное время (доступ по индексу в списке)
  • O(n) – линейное (проход по списку)
  • O(n²) – квадратичное (вложенные циклы)
  • O(log n) – логарифмическое (бинарный поиск)

Пример:

python
# O(n) – линейная сложность
def sum_list(lst):
    total = 0
    for num in lst:  # Проход по всем элементам
        total += num
    return total

# O(n²) – квадратичная сложность
def find_pairs(lst):
    for i in lst:      # Внешний цикл
        for j in lst:  # Вложенный цикл
            print(i, j)

Для точной оценки важно учитывать худший случай (worst-case scenario) и доминирующие операции.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы