import
java.util.*;
class
Node {
int
data;
Node left;
Node right;
Node(
int
data) {
this
.data = data;
left = right =
null
;
}
}
class
Main {
static
int
maxOfLeftElement(Node root) {
int
res = Integer.MIN_VALUE;
if
(root ==
null
)
return
res;
Queue<Node> q =
new
LinkedList<Node>();
q.offer(root);
while
(!q.isEmpty()){
Node front_node = q.poll();
if
(front_node.left !=
null
){
res = Math.max(res, front_node.left.data);
}
if
(front_node.left !=
null
) q.offer(front_node.left);
if
(front_node.right !=
null
) q.offer(front_node.right);
}
return
res;
}
public
static
void
main(String[] args) {
Node root =
new
Node(
7
);
root.left =
new
Node(
6
);
root.right =
new
Node(
5
);
root.left.left =
new
Node(
4
);
root.left.right =
new
Node(
3
);
root.right.left =
new
Node(
2
);
root.right.right =
new
Node(
1
);
System.out.println(maxOfLeftElement(root));
}
}