Exemple #1
0
def test_queue():
    f = Queue()

    test_array = [i for i in range(100)]

    for i in test_array:
        f.enqueue(i)

    result = []

    while not f.is_empty():
        result.append(f.deque())

    assert test_array == result
def bfs(graph: Graph, start_node: str, target_node: str, visited_nodes: set):
    queue = Queue()
    queue.enqueue(start_node)

    while not queue.is_empty():
        current = queue.deque()

        if current == target_node:
            return True

        adj = graph.get_edges_node(current)
        for node in adj:
            if node not in visited_nodes:

                queue.enqueue(node)
        visited_nodes.add(current)

    return False