Реализовать функцию, которая генерирует все возможные подмножества списка.

Генерация всех возможных подмножеств списка

Функция generate_subsets рекурсивно генерирует все подмножества для данного списка.

def generate_subsets(lst):
    """Генерирует все подмножества списка."""
    if not lst:
        return [[]]
    first = lst[0]
    rest_subsets = generate_subsets(lst[1:])
    with_first = [[first] + subset for subset in rest_subsets]
    return rest_subsets + with_first

# Пример использования:
example_list = [1, 2, 3]
print("Подмножества списка", example_list, ":", generate_subsets(example_list))

Эта функция начинается с возвращения списка, содержащего пустое подмножество, если исходный список пуст. Затем, для каждого элемента, она рекурсивно вычисляет все подмножества оставшихся элементов, добавляя текущий элемент к каждому из них, и объединяет эти списки.

Категория: Практические упражнения Python | Добавил: Admin (03.05.2024)
Просмотров: 16 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: