質問編集履歴

1

public StringBuilder rt = new StringBuilder("");をフィールドに追加した。

2021/12/21 03:01

投稿

K.M.PEANUTS
K.M.PEANUTS

スコア40

test CHANGED
File without changes
test CHANGED
@@ -10,6 +10,8 @@
10
10
 
11
11
  public Node right = null; // 右の子ノード
12
12
 
13
+ public StringBuilder rt = new StringBuilder("");
14
+
13
15
  public String rt_expression; //後置記法の式
14
16
 
15
17
 
@@ -17,8 +19,6 @@
17
19
  public void traversePostorder()
18
20
 
19
21
  {
20
-
21
- StringBuilder rt = new StringBuilder("");
22
22
 
23
23
  // 左右に子ノードをもつ場合、表示する前にノードを再帰的に巡回する
24
24
 
@@ -34,15 +34,23 @@
34
34
 
35
35
  //rtにexpressionを追加していって後置記法の数式を完成させる
36
36
 
37
- rt.append(expression);
37
+ this.rt.append(expression);
38
-
39
- this.rt_expression = rt.toString();
40
38
 
41
39
  // 巡回を終えた後でノードの演算子または項を表示する
42
40
 
43
41
  // (読みやすさのために項の後に空白を補って表示する)
44
42
 
45
43
  System.out.print(expression + " ");
44
+
45
+ }
46
+
47
+
48
+
49
+ public String getRtExpression() {
50
+
51
+ this.rt_expression = this.rt.toString();
52
+
53
+ return this.rt_expression;
46
54
 
47
55
  }
48
56