给邻接表的图实现添加一个边是否存在的判定

This commit is contained in:
weishx 2024-06-29 00:27:49 +08:00
parent 27d59f65a6
commit c52a45edbb

View File

@ -42,6 +42,13 @@ impl GraphAdjList {
{
panic!("value error");
}
// 判断边是否已经存在
if self.adj_list[&vet1].contains(&vet2) || self.adj_list[&vet2].contains(&vet1) {
println!("{}-{} 已经存在,无需重复添加", vet1.val, vet2.val);
return;
}
// 添加边 vet1 - vet2
self.adj_list.get_mut(&vet1).unwrap().push(vet2);
self.adj_list.get_mut(&vet2).unwrap().push(vet1);
@ -54,6 +61,13 @@ impl GraphAdjList {
{
panic!("value error");
}
// 判断边是否存在
if !self.adj_list[&vet1].contains(&vet2) || !self.adj_list[&vet2].contains(&vet1) {
println!("{}-{} 不存在,无需删除", vet1.val, vet2.val);
return;
}
// 删除边 vet1 - vet2
self.adj_list
.get_mut(&vet1)