📅  最后修改于: 2023-12-03 15:37:20.734000             🧑  作者: Mango
在图数据结构中,Adjacency List 是一种常见的表示方式,它将每个顶点与其邻居顶点列表相关联。
在此表示方式下,添加和删除顶点有一些注意事项。
在 Adjacency List 中添加顶点,我们需要创建一个新的列表并将其添加到图中。
要添加一个新的顶点,我们可以将一个新的key-value对添加到一个字典中,字典的key是与该顶点相对应的标识符,value是一个空的列表,表示该顶点的邻接点。
以下是一个添加一个新的顶点的Python代码片段:
def add_vertex(graph, vertex):
if vertex not in graph:
graph[vertex] = []
这个函数接受两个参数,一个是表示整个图的字典,另一个是要添加的顶点。如果字典中没有与该顶点相对应的键,它会将该顶点添加到字典中。
当我们要从 Adjacency List 中删除顶点时,需要删除所有与该顶点相关的边,并且需要从列表中删除顶点本身。
以下是一个删除顶点的Python代码片段:
def remove_vertex(graph, vertex):
if vertex in graph:
del graph[vertex]
for v in graph:
if vertex in graph[v]:
graph[v].remove(vertex)
这个函数接受两个参数,一个是表示整个图的字典,另一个是要移除的顶点。它首先从字典中删除该顶点的键,然后遍历图中的每个顶点,检查该顶点是否与要删除的顶点存在边,如果存在,则将其从相关的邻接列表中删除。
这些是在Adjacency List中添加和删除顶点的基本操作。注意,在实际使用中,我们可能需要根据具体情况添加更多的逻辑来处理这些操作。