2016-10-18 30 views
0

したがって、赤い黒いツリーのJavaコードがあります。エラー:解析中にファイルの終わりに達しました

public class RedBlackBST<Key extends Comparable<Key>, Value> 

    { 
     private Node root; 
     private class Node // BST node with color bit (see page 433) 
     private boolean isRed(Node h); // See page 433. 
     private Node rotateLeft(Node h); // See page 434. 
     private Node rotateRight(Node h); // See page 434. 
     private void flipColors(Node h); // See page 436. 
     private int size(); // See page 398. 

     public void put(Key key, Value val){ // Search for key. Update value if found; grow table if new. 
      root = put(root, key, val); 
      root.color = BLACK; 
     } 

     private Node put(Node h, Key key, Value val) { 
      //inserts the value into the tree 
     } 
    } 

ここに私のノードクラスです:

private static final boolean RED = true; 
private static final boolean BLACK = false; 
private class Node { 
    Key key; // key 
    Value val; // associated data 
    Node left, right; // subtrees 
    int N; // # nodes in this subtree 
    boolean color; // color of link from 
    // parent to this node 
    Node(Key key, Value val, int N, boolean color) { 
     this.key = key; 
     this.val = val; 
     this.N = N; 
     this.color = color; 
    } 
} 

奇妙な私はそれを実行するたびに、私はRedBlackBSTコードの最後の行にerror: reached end of file while parsingを言うエラーが出るということです。問題は私がチェックして、私の括弧が閉じているので、私にこのエラーを与えてはならないが、それはなぜ私がちょうどそれを言っているのだろうかと思っている。

答えて

1

Nodeクラスの構文が間違っています。 private static final boolean値はクラス内である必要があり、その後、彼らは他のクラスからアクセスできるようにする必要があります。

private class Node { 

    public static final boolean RED = true; 
    public static final boolean BLACK = false; 

    Key key; // key 
    Value val; // associated data 
    Node left, right; // subtrees 
    int N; // # nodes in this subtree 
    boolean color; // color of link from 
    // parent to this node 
    Node(Key key, Value val, int N, boolean color) { 
    this.key = key; 
    this.val = val; 
    this.N = N; 
    this.color = color; 
    } 
} 
+0

それはまだ私にエラーを与えています。プライベート静的最終ブール値は他のクラスからアクセスできるように見えますが、それでもエラーが発生します。 –

+0

最初のクラスでは、静的変数が他のクラスにあることを明示的に伝える必要があります。 –

関連する問題