Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static Node[][] initGraph(int a, int b) {
- Node[][] graph = new Node[a+1][b+1];
- for (int i = 0; i < graph.length; i++) {
- for (int j = 0; j < graph[i].length; j++) {
- graph[i][j] = new Node(i, j);
- }
- }
- for (int i = 1; i < graph.length - 1; i++) {
- for (int j = 0; j < graph[i].length; j++) {
- graph[i][j].edges.add(graph[i+1][j]);
- graph[i][j].edges.add(graph[i-1][j]);
- if (j == 0) graph[i][j].edges.add(graph[i][j+1]);
- else if (j == graph[i].length - 1) graph[i][j].edges.add(graph[i][j-1]);
- else {
- graph[i][j].edges.add(graph[i][j-1]);
- graph[i][j].edges.add(graph[i][j+1]);
- }
- }
- }
- int i = 0;
- for (int j = 0; j < graph[i].length; j++) {
- graph[i][j].edges.add(graph[i+1][j]);
- if (j == 0) graph[i][j].edges.add(graph[i][j+1]);
- else if (j == graph[i].length - 1) graph[i][j].edges.add(graph[i][j-1]);
- else {
- graph[i][j].edges.add(graph[i][j-1]);
- graph[i][j].edges.add(graph[i][j+1]);
- }
- }
- i = graph.length - 1;
- for (int j = 0; j < graph[graph.length - 1].length; j++) {
- graph[i][j].edges.add(graph[i-1][j]);
- if (j == 0) graph[i][j].edges.add(graph[i][j+1]);
- else if (j == graph[i].length - 1) graph[i][j].edges.add(graph[i][j-1]);
- else {
- graph[i][j].edges.add(graph[i][j-1]);
- graph[i][j].edges.add(graph[i][j+1]);
- }
- }
- return graph;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement