Skip to content

Commit 7b56bcd

Browse files
committed
feat: 수식 트리 초기화 코드 구현
1 parent 05d3a63 commit 7b56bcd

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package tree.expressiontree;
2+
3+
import stack.ListStack;
4+
import stack.Stack;
5+
import tree.binarytree.TraversableBinaryTreeNode;
6+
import tree.binarytree.TraversableBinaryTreeNodeImpl;
7+
8+
public class ExpressionTreeImpl implements ExpressionTree {
9+
10+
private TraversableBinaryTreeNode<Character> root;
11+
12+
public ExpressionTreeImpl(char[] postfixExpression) {
13+
Stack<TraversableBinaryTreeNode<Character>> stack = new ListStack<>();
14+
15+
for (char expr : postfixExpression) {
16+
TraversableBinaryTreeNode<Character> node = new TraversableBinaryTreeNodeImpl<>(expr);
17+
if (!Character.isDigit(expr)) { // 숫자가 아니라면, 연산자임
18+
node.setRightSubTree(stack.pop());
19+
node.setLeftSubTree(stack.pop());
20+
}
21+
22+
stack.push(node);
23+
}
24+
25+
root = stack.pop();
26+
}
27+
28+
@Override
29+
public int evaluateTree() {
30+
return 0;
31+
}
32+
33+
@Override
34+
public void prefixTypeExpression(StringBuilder sb) {
35+
36+
}
37+
38+
@Override
39+
public void infixTypeExpression(StringBuilder sb) {
40+
41+
}
42+
43+
@Override
44+
public void postfixTypeExpression(StringBuilder sb) {
45+
46+
}
47+
}

0 commit comments

Comments
 (0)