Перейти к содержанию

Лабораторная работа №1: Сумма двух

Цель работы

Изучение базовых алгоритмов поиска в массивах и отработка навыков работы с вложенными циклами в Python.

Задание

Реализовать функцию two_sum, которая принимает список чисел и целевое значение (target). Функция должна вернуть индексы двух чисел, сумма которых равна target. Если решение отсутствует, вернуть None.

Реализация

def two_sum(nums, target: int):
    for i in range(len(nums)):
        for j in range(i + 1, len(nums)):
            if nums[i] + nums[j] == target:
                return [i, j]
    return None

Вывод

В результате выполнения работы был реализован алгоритм поиска пары элементов методом перебора (brute force). Разработанные тесты подтвердили корректность работы функции для различных сценариев: от стандартных массивов до пустых списков. Алгоритм успешно находит первую подходящую пару индексов и возвращает её, имея при этом временную сложность O(n^2).