forked from loopccoew/Buffer-4.0
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGraph.java
79 lines (66 loc) · 2.56 KB
/
Graph.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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
package Buffer;
import java.util.*;
public class Graph {
private static ArrayList<SpecialNode> specialNodes;
private static ArrayList<PropertyNode> propertyNodes;
public Graph() {
this.specialNodes = new ArrayList<SpecialNode>();
this.propertyNodes = new ArrayList<PropertyNode>();
}
public void addSpecialNode(SpecialNode node) {
specialNodes.add(node);
}
public void addPropertyNode(PropertyNode node) {
propertyNodes.add(node);
}
public ArrayList<SpecialNode> getSpecialNodes() {
return specialNodes;
}
public ArrayList<PropertyNode> getPropertyNodes() {
return propertyNodes;
}
public static void createAdjacencyList(SpecialNode searcharea) {
ArrayList<PropertyNode> neighbors = new ArrayList<PropertyNode>();
for (PropertyNode node : propertyNodes) {
if(node.getArea().equals(searcharea)) {
neighbors.add(node);
for (PropertyNode otherNode : propertyNodes) {
if (node != otherNode && node.getArea() == otherNode.getArea()) {
neighbors.add(otherNode);
}
}
break;
}
}
System.out.println("--------------------------------------------------------------");
System.out.println("Available properties in " +searcharea.getLabel() + ":");
System.out.println("--------------------------------------------------------------");
for (PropertyNode neighbor : neighbors) {
if(neighbor.isAvailable()==true) {
System.out.println(" |");
System.out.println(" |");
System.out.println(" |");
System.out.println("--------------------------------------------------------------");
System.out.println(" |Name of the owner is: |" +neighbor.getName());
System.out.println(" |The amenities avaliable are: |" +neighbor.getAmenities());
System.out.println(" |Price of the property is: |" +neighbor.getPrice());
System.out.println(" |Size of the given property is: |" +neighbor.getSize());
System.out.println(" |Contact number of the owner is: |" +neighbor.getPhoneNumber());
System.out.println(" |The property ID is: |" +neighbor.getId());
System.out.println("--------------------------------------------------------------");
}
}
}
public static void searchprop(String area) {
SpecialNode searcharea = null;
for (SpecialNode node : specialNodes) {
if (node.getLabel().equals(area)) {
searcharea = node;
createAdjacencyList(searcharea);
return;
}
}
System.out.println("Area not found.");
return;
}
}