hello-algo/codes/go/chapter_graph/graph_adjacency_matrix_test.go
Reanon 93ca29ca6d
feat(graph): add go codes (#314)
* feat(graph): add go codes

* feat(go/graph): add graph_adjacency_list

* doc(graph): add go codes

* fix(graph): fix go codes

* Update graph_adjacency_matrix_test.go

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-02-05 16:08:08 +08:00

43 lines
1,017 B
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// File: graph_adjacency_matrix_test.go
// Created Time: 2023-01-31
// Author: Reanon (793584285@qq.com)
package chapter_graph
import (
"fmt"
"testing"
)
func TestGraphAdjMat(t *testing.T) {
/* 初始化无向图 */
// 请注意edges 元素代表顶点索引,即对应 vertices 元素索引
vertices := []int{1, 3, 2, 5, 4}
edges := [][]int{{0, 1}, {0, 2}, {1, 2}, {2, 3}, {0, 3}, {2, 4}, {3, 4}}
graph := newGraphAdjMat(vertices, edges)
fmt.Println("初始化后,图为:")
graph.print()
/* 添加边 */
// 顶点 1, 2 的索引分别为 0, 2
graph.addEdge(0, 2)
fmt.Println("添加边 1-2 后,图为")
graph.print()
/* 删除边 */
// 顶点 1, 3 的索引分别为 0, 1
graph.removeEdge(0, 1)
fmt.Println("删除边 1-3 后,图为")
graph.print()
/* 添加顶点 */
graph.addVertex(6)
fmt.Println("添加顶点 6 后,图为")
graph.print()
/* 删除顶点 */
// 顶点 3 的索引为 1
graph.removeVertex(1)
fmt.Println("删除顶点 3 后,图为")
graph.print()
}