Skip to content

Commit c2acae6

Browse files
author
sama
committed
modify the comments
1 parent 875a2af commit c2acae6

File tree

2 files changed

+10
-19
lines changed

2 files changed

+10
-19
lines changed

cpp_easygraph/functions/centrality/eigenvector.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -160,11 +160,9 @@ CSRMatrix build_transpose_matrix(
160160

161161
for (int i = 0; i < n; i++) {
162162
if (!has_connections[i]) {
163-
// 为孤立节点添加小的自环权重
164163
matrix.indices.push_back(i);
165164
matrix.data.push_back(1.0e-4);
166165

167-
// 更新indptr
168166
for (int j = i + 1; j <= n; j++) {
169167
matrix.indptr[j]++;
170168
}
@@ -313,10 +311,9 @@ py::object cpp_eigenvector_centrality(
313311

314312
std::vector<bool> isolated_nodes(n, true);
315313
for (int i = 0; i < n; i++) {
316-
if (A_transpose.indptr[i + 1] > A_transpose.indptr[i] + 1) { // +1 考虑我们可能添加的自环
314+
if (A_transpose.indptr[i + 1] > A_transpose.indptr[i] + 1) {
317315
isolated_nodes[i] = false;
318316
} else if (A_transpose.indptr[i + 1] == A_transpose.indptr[i] + 1) {
319-
// 检查是否是我们添加的自环
320317
int idx = A_transpose.indptr[i];
321318
if (A_transpose.indices[idx] == i && std::abs(A_transpose.data[idx] - 1.0e-4) < 1e-10) {
322319
isolated_nodes[i] = true;

easygraph/functions/centrality/tests/test_eigenvector.py

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def setUp(self):
1616
(4, 256),
1717
((None, None), (None, None)),
1818
]
19-
# 注意:不要在测试集中包含空图
19+
2020
self.test_graphs = []
2121
self.test_graphs.append(eg.classes.DiGraph(self.edges))
2222

@@ -28,17 +28,16 @@ def setUp(self):
2828

2929
self.weighted_graph = eg.Graph()
3030
self.weighted_graph.add_edges_from([(0, 1), (1, 2), (2, 3)])
31-
# 根据test_closeness.py的风格设置权重
31+
3232
for u, v, data in self.weighted_graph.edges:
3333
data["weight"] = 2.0
3434

3535
self.disconnected_graph = eg.Graph()
3636
self.disconnected_graph.add_edges_from([(0, 1), (2, 3)])
3737

38-
# 孤立节点图
3938
self.isolated_node_graph = eg.Graph()
4039
self.isolated_node_graph.add_edges_from([(0, 1), (1, 2)])
41-
self.isolated_node_graph.add_node(3) # 添加孤立节点
40+
self.isolated_node_graph.add_node(3)
4241

4342
self.single_node_graph = eg.Graph()
4443
self.single_node_graph.add_node(42)
@@ -47,19 +46,19 @@ def setUp(self):
4746
self.mixed_nodes_graph.add_edges_from([(1, 2), ("X", "Y"), ((1, 2), (3, 4))])
4847

4948
def test_eigenvector(self):
50-
# 测试非空图的特征向量中心性
49+
5150
for G in self.test_graphs:
5251
result = eigenvector_centrality(G)
5352
self.assertIsInstance(result, dict)
5453
self.assertEqual(len(result), len(G))
55-
# 验证所有值都是浮点数
54+
5655
for v in result.values():
5756
self.assertIsInstance(v, float)
5857

5958
def test_simple_graph(self):
6059
result = eigenvector_centrality(self.simple_graph)
6160
self.assertEqual(len(result), len(self.simple_graph))
62-
# 验证所有值都是浮点数
61+
6362
for v in result.values():
6463
self.assertIsInstance(v, float)
6564

@@ -72,25 +71,22 @@ def test_weighted_graph(self):
7271
self.assertEqual(len(result), len(self.weighted_graph))
7372

7473
def test_disconnected_graph(self):
75-
# 验证断开的图能正常计算中心性
74+
7675
result = eigenvector_centrality(self.disconnected_graph)
7776
self.assertEqual(len(result), len(self.disconnected_graph))
7877

7978
def test_isolated_nodes(self):
80-
# 验证带有孤立节点的图能正常计算
79+
8180
result = eigenvector_centrality(self.isolated_node_graph)
8281
self.assertEqual(len(result), len(self.isolated_node_graph))
83-
# 验证孤立节点有合理的中心性值
8482
self.assertTrue(3 in result)
8583
self.assertGreaterEqual(result[3], 0)
8684

8785
def test_single_node_graph(self):
88-
# 验证单节点图会抛出适当的异常
8986
with self.assertRaises(EasyGraphPointlessConcept):
9087
eigenvector_centrality(self.single_node_graph)
9188

9289
def test_mixed_node_types(self):
93-
# 验证不同类型的节点都能正常处理
9490
result = eigenvector_centrality(self.mixed_nodes_graph)
9591
self.assertEqual(len(result), len(self.mixed_nodes_graph))
9692

@@ -108,14 +104,12 @@ def test_nstart_parameter(self):
108104
self.assertEqual(len(result), len(self.simple_graph))
109105

110106
def test_multigraph_raises(self):
111-
# 验证多重图会抛出适当的异常
112107
G = eg.MultiGraph()
113108
G.add_edges_from([(0, 1), (0, 1)])
114-
with self.assertRaises(EasyGraphNotImplemented): # 修正这里的异常类型
109+
with self.assertRaises(EasyGraphNotImplemented):
115110
eigenvector_centrality(G)
116111

117112
def test_empty_graph_raises(self):
118-
# 验证空图会抛出适当的异常
119113
G = eg.Graph()
120114
with self.assertRaises(EasyGraphPointlessConcept):
121115
eigenvector_centrality(G)

0 commit comments

Comments
 (0)