学无先后,达者为师

网站首页 编程语言 正文

python:实现all subsequences所有子序列算法(附完整源码)

作者:全栈技术博客 更新时间: 2022-07-19 编程语言

python:实现all subsequences所有子序列算法


from __future__ import annotations

from typing import Any


def generate_all_subsequences(sequence: list[Any]) -> None:
    create_state_space_tree(sequence, [], 0)


def create_state_space_tree(
    sequence: list[Any], current_subsequence: list[Any], index: int
) -> None:


    if index == len(sequence):
        print(current_subsequence)
        return

    create_state_space_tree(sequence, current_subsequence, index + 1)
    current_subsequence.append(sequence[index])
    create_state_space_tree(sequence, current_subsequence, index + 1)
    current_subsequence.pop()


if __name__ == "__main__":
    seq: list[Any] = [3, 1, 2, 4]
    generate_all_subsequences(seq)

    seq.clear()
    seq.extend(["A", "B", "C"])
    generate_all_subsequences(seq)

原文链接:https://cplusplus.blog.csdn.net/article/details/125858538

栏目分类
最近更新