Can anyone point me to some simple AVL tree Java code? I need to use the trees as part of a homework assignment to test memory fragmentation, but all the code I've been able to find online was incomplete (intended for students to finish) or unreadable (due to either very odd implementation, complete lack of commenting, the addition of umpteen billion extra bells & whistles, dependency on some unprovided binary search tree class, or usually a combination of the above).

Readability is my number 1 priority; all I need is insert, delete, and the ability to take integer keys (I can use Integer so generics are fine as long as they don't interfere with the readability).

I'd really prefer to not re-write it myself since that's not part of the assignment.