public int size () { return size (root); } private static int sz = 0; private static int size (Node x) { if (x == null) return sz; sz = sz + 1; size (x.left); size (x.right); return sz; }
Is this correct?