java计算无向图的度
时间: 2023-11-04 20:06:03 浏览: 155
计算无向图的度可以通过遍历每个节点,并统计与该节点相连的边数来实现。具体实现可以采用邻接矩阵或邻接表的方式表示图。
使用邻接矩阵表示图的话,可以遍历每行或每列,统计该节点的度数即可。代码示例:
```java
public static int[] getDegrees(int[][] graph) {
int numNodes = graph.length;
int[] degrees = new int[numNodes];
for (int i = 0; i < numNodes; i++) {
for (int j = 0; j < numNodes; j++) {
if (graph[i][j] == 1) {
degrees[i]++;
}
}
}
return degrees;
}
```
使用邻接表表示图的话,可以遍历每个节点的邻居列表,统计该节点的度数即可。代码示例:
```java
public static int[] getDegrees(List<Integer>[] graph) {
int numNodes = graph.length;
int[] degrees = new int[numNodes];
for (int i = 0; i < numNodes; i++) {
List<Integer> neighbors = graph[i];
for (int j = 0; j < neighbors.size(); j++) {
degrees[i]++;
}
}
return degrees;
}
```
阅读全文