Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitaa18a5a

Browse files
refactor 133
1 parent9fe07fc commitaa18a5a

File tree

2 files changed

+54
-34
lines changed

2 files changed

+54
-34
lines changed
Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,56 @@
11
packagecom.fishercoder.solutions;
22

3-
importcom.fishercoder.common.classes.UndirectedGraphNode;
4-
3+
importjava.util.ArrayList;
54
importjava.util.HashMap;
65
importjava.util.LinkedList;
6+
importjava.util.List;
77
importjava.util.Map;
88
importjava.util.Queue;
99

1010
publicclass_133 {
1111

1212
publicstaticclassSolution1 {
13-
publicUndirectedGraphNodecloneGraph(UndirectedGraphNodenode) {
13+
publicNodecloneGraph(Nodenode) {
1414
if (node ==null) {
1515
returnnode;
1616
}
1717

18-
Map<Integer,UndirectedGraphNode>map =newHashMap();
19-
Queue<UndirectedGraphNode>queue =newLinkedList();
20-
UndirectedGraphNoderoot =newUndirectedGraphNode(node.val);
18+
Map<Integer,Node>map =newHashMap();
19+
Queue<Node>queue =newLinkedList();
20+
Noderoot =newNode(node.val);
2121
map.put(root.val,root);
22-
queue.offer(node);
2322
//remember to offer the original input node into the queue which contains all the information
23+
queue.offer(node);
2424
while (!queue.isEmpty()) {
25-
UndirectedGraphNodecurr =queue.poll();
26-
for (UndirectedGraphNodeeachNode :curr.neighbors) {
25+
Nodecurr =queue.poll();
26+
for (NodeeachNode :curr.neighbors) {
2727
if (!map.containsKey(eachNode.val)) {
28-
map.put(eachNode.val,newUndirectedGraphNode(eachNode.val));
28+
map.put(eachNode.val,newNode(eachNode.val));
2929
queue.offer(eachNode);
3030
}
3131
map.get(curr.val).neighbors.add(map.get(eachNode.val));
3232
}
3333
}
3434
returnroot;
3535
}
36+
37+
classNode {
38+
publicintval;
39+
publicList<Node>neighbors;
40+
41+
publicNode() {
42+
this.neighbors =newArrayList<>();
43+
}
44+
45+
publicNode(intval) {
46+
this.val =val;
47+
this.neighbors =newArrayList<>();
48+
}
49+
50+
publicNode(intval,List<Node>neighbors) {
51+
this.val =val;
52+
this.neighbors =neighbors;
53+
}
54+
}
3655
}
3756
}
Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
packagecom.fishercoder;
22

3+
importcom.fishercoder.common.classes.Node;
34
importcom.fishercoder.common.classes.UndirectedGraphNode;
45
importcom.fishercoder.solutions._133;
56
importorg.junit.Before;
@@ -9,32 +10,32 @@
910
importstaticjunit.framework.Assert.assertEquals;
1011

1112
publicclass_133Test {
12-
privatestatic_133.Solution1solution1;
13-
privatestaticUndirectedGraphNodeexpected;
14-
privatestaticUndirectedGraphNodeactual;
13+
privatestatic_133.Solution1solution1;
14+
privatestaticNodeexpected;
15+
privatestaticNodeactual;
1516

16-
@BeforeClass
17-
publicstaticvoidsetup() {
18-
solution1 =new_133.Solution1();
19-
}
17+
@BeforeClass
18+
publicstaticvoidsetup() {
19+
solution1 =new_133.Solution1();
20+
}
2021

21-
@Before
22-
publicvoidsetupForEachTest() {
23-
expected =null;
24-
actual =null;
25-
}
22+
@Before
23+
publicvoidsetupForEachTest() {
24+
expected =null;
25+
actual =null;
26+
}
2627

27-
@Test
28-
publicvoidtest1() {
29-
UndirectedGraphNodenode0 =newUndirectedGraphNode(0);
30-
UndirectedGraphNodenode1 =newUndirectedGraphNode(1);
31-
UndirectedGraphNodenode2 =newUndirectedGraphNode(2);
32-
node0.neighbors.add(node1);
33-
node0.neighbors.add(node2);
34-
node1.neighbors.add(node2);
28+
@Test
29+
publicvoidtest1() {
30+
Nodenode0 =newNode(0);
31+
Nodenode1 =newNode(1);
32+
Nodenode2 =newNode(2);
33+
node0.children.add(node1);
34+
node0.children.add(node2);
35+
node1.children.add(node2);
3536

36-
expected =node0;
37-
actual =solution1.cloneGraph(expected);
38-
assertEquals(expected,actual);
39-
}
37+
expected =node0;
38+
actual =solution1.cloneGraph(expected);
39+
assertEquals(expected,actual);
40+
}
4041
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp