-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLabGraph +.java
63 lines (39 loc) · 1.2 KB
/
LabGraph +.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/**
* @author abdullahkavakli
*/
import java.util.List;
import java.util.Map;
public class LabGraph<T> extends AbstractGraph<T> {
@Override
public int outDegree(T deger) {
for (Vertex<T> vertex : vertices) {
if (vertex.value == (deger))
return vertex.edges.size();
}
return -1;
}
@Override
public int inDegree(T deger) {
int degree=0;//indegrre that we count
for (Map.Entry<T, List<Edge<T>>> mapElement : edges.entrySet()) {
for (int i = 0; i < (mapElement.getValue().size()); i++) {
if (mapElement.getValue().get(i).to.value==deger){
degree++;
}
}
}
if (degree>0)
return degree;
else {
int indicator=0;
for (Vertex<T> vertex : vertices) {
if (vertex.value == (deger))
indicator=1;
}
if (indicator==0){
return -1;
}
return 0;
}
}
}