Skip to content

Commit 63ad961

Browse files
committed
199. Binary Tree Right Side View
1 parent e56a345 commit 63ad961

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
import scala.collection.mutable
2+
3+
class TreeNode(_value: Int = 0, _left: TreeNode = null, _right: TreeNode = null) {
4+
var value: Int = _value
5+
var left: TreeNode = _left
6+
var right: TreeNode = _right
7+
}
8+
9+
object Solution {
10+
import scala.collection.mutable
11+
def rightSideView(root: TreeNode): List[Int] = {
12+
val array = mutable.ArrayBuffer.empty[mutable.ArrayBuffer[Int]]
13+
def bfs(node: TreeNode, level: Int): Unit = {
14+
if (node != null) {
15+
if (array.size <= level) {
16+
array.addOne(mutable.ArrayBuffer.empty)
17+
}
18+
array(level).addOne(node.value)
19+
bfs(node.left, level + 1)
20+
bfs(node.right, level + 1)
21+
}
22+
}
23+
bfs(root, 0)
24+
println(array)
25+
array.map(_.last).toList
26+
}
27+
}
28+
29+
val tree1 = new TreeNode(1,
30+
_left = new TreeNode(2,
31+
_left = new TreeNode(5)
32+
),
33+
_right = new TreeNode(3,
34+
_left = new TreeNode(6),
35+
_right = new TreeNode(4),
36+
)
37+
)
38+
39+
Solution.rightSideView(tree1)

0 commit comments

Comments
 (0)