MCPcopy Index your code
hub / github.com/TheAlgorithms/Python / TreeNode

Class TreeNode

machine_learning/frequent_pattern_growth.py:19–52  ·  view source on GitHub ↗

A node in a Frequent Pattern tree. Args: name: The name of this node. num_occur: The number of occurrences of the node. parent_node: The parent node. Example: >>> parent = TreeNode("Parent", 1, None) >>> child = TreeNode("Child", 2, parent) >>> chil

Source from the content-addressed store, hash-verified

17
18@dataclass
19class TreeNode:
20 """
21 A node in a Frequent Pattern tree.
22
23 Args:
24 name: The name of this node.
25 num_occur: The number of occurrences of the node.
26 parent_node: The parent node.
27
28 Example:
29 >>> parent = TreeNode("Parent", 1, None)
30 >>> child = TreeNode("Child", 2, parent)
31 >>> child.name
32 'Child'
33 >>> child.count
34 2
35 """
36
37 name: str
38 count: int
39 parent: TreeNode | None = None
40 children: dict[str, TreeNode] = field(default_factory=dict)
41 node_link: TreeNode | None = None
42
43 def __repr__(self) -> str:
44 return f"TreeNode({self.name!r}, {self.count!r}, {self.parent!r})"
45
46 def inc(self, num_occur: int) -> None:
47 self.count += num_occur
48
49 def disp(self, ind: int = 1) -> None:
50 print(f"{' ' * ind} {self.name} {self.count}")
51 for child in self.children.values():
52 child.disp(ind + 1)
53
54
55def create_tree(data_set: list, min_sup: int = 1) -> tuple[TreeNode, dict]:

Callers 2

create_treeFunction · 0.70
update_treeFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected