Generieren Sie docstrings und Kommentare für Python-Funktionen.
Sie können ein Modell direkt abfragen und die zurückgegebenen Ergebnisse testen, wenn Sie verschiedene Parameterwerte mit der Cloud Console oder durch direkten Aufruf der Vertex AI API verwenden.
|
|||||||||||
Freiform-PromptHere are Python codes. Insert the document comment (docstring) for all functions, including the nested functions. def is_dag_dfs(graph): visited = set() on_stack = set() # Track nodes on recursion stack def dfs(node): if node in on_stack: return False # Back-edge found (cycle) if node in visited: return True on_stack.add(node) visited.add(node) for neighbor in graph.get(node, []): if not dfs(neighbor): return False on_stack.remove(node) return True return all(dfs(node) for node in graph) Antwort```python def is_dag_dfs(graph): """ Determines if a directed graph is a Directed Acyclic Graph (DAG) using Depth-First Search (DFS). Args: graph (dict): A dictionary representing the graph, where keys are nodes and values are lists of adjacent nodes. Returns: bool: True if the graph is a DAG, False otherwise. """ visited = set() on_stack = set() # Track nodes on recursion stack def dfs(node): """ Performs DFS on the graph starting from the given node. Args: node: The node to start DFS from. Returns: bool: True if the graph is a DAG, False if a cycle is found. """ if node in on_stack: return False # Back-edge found (cycle) if node in visited: return True on_stack.add(node) visited.add(node) for neighbor in graph.get(node, []): if not dfs(neighbor): return False on_stack.remove(node) return True return all(dfs(node) for node in graph) ``` |
|