DEV Community

loading...

Depth-First Search (DFS) with Python

jabermudez11 profile image Justin Bermudez ・1 min read

Given a Node class that has a name and array of optional children nodes. When put together, these nodes form a tree-like structure.


class Node:
    def __init__(self, name):
        self.children = []
        self.name = name
    def addChild(self, name):
        self.children.append(Node(name))
        return self
    def depthFirstSearch(self, array):
        array.append(self.name)
        for child in self.children:
            child.depthFirstSearch(array)
        return array

Discussion

pic
Editor guide