leetcode--组合

# -*- coding:utf-8 -*-

import copy

class ZuHeTree:
    def __init__(self, a_list):
        self.a_list = a_list
        self.list_size = len(a_list)

        self.result = []
        self.path = []

    def zu_he(self, k, start_index):
        if len(self.path) >= k:
            self.result.append(copy.deepcopy(self.path))
            return None

        i = start_index
        while i < self.list_size:
            self.path.append(self.a_list[i])
            self.zuhe(k, i+1)
            self.path.pop()
            i += 1

    def display(self):
        print(self.result)

if __name__ == "__main__":
    l = ['a', 'b', 'c', 'd']
    s = ZuHeTree(l)
    s.zu_he(2, 0)
    s.display()

 

posted @ 2021-09-24 11:37  techPark  阅读(18)  评论(0)    收藏  举报