Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def get_deepest_parents(self, acc):
- all_children = self.get_all_children(acc) # Всичко под acc
- leaves = self.get_leaves() # Всички листа на цялото дърво
- # Сечението между all_children и leaves ще даде листата,
- # които са под зададената сметка acc
- # Сечението го взех от https://stackoverflow.com/questions/2864842/common-elements-comparison-between-2-lists
- # Отговорът там не е отбелязан със зелена чавка,
- # но съвпада с обясненията в други източници
- leaves_under_acc = list(set(all_children).intersection(leaves))
- # Остава минем през всяко листо в leaves_under_acc и да му вземем родителя
- deepest_parents = [] # Тук ще трупаме родителите на листата
- for leaf in leaves_under_acc:
- parent = self.get_parent(leaf) # родител на листото
- if parent not in deepest_parents: # избягваме повторения
- deepest_parents.append(parent) # добавяме родителя на листото
- return deepest_parents
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement