>>608
あくまでやり直さないんだな?
じゃ、もう一つ、お前のコードの糞・ウンコな問題点を指摘しておこうか?

public void remove(final int v)
略
root = root.delNode(v);

public Node delNode(final int v)
略、結局はどの分岐を通っても最後は
return this;

これは実際のノード削除作業が終わった後、root に向かって再帰ルーチンを抜けるたびごとに代入が発生することを示している
しかも、代入する値は代入する前と変わらない

はやくやりなおせ
この無駄、なんとかならんかね?