As to the use of java, for most data structures none of the OO aspects will be remotely relevant so really it boils down to writing C like code on a platform with array bounds checking and null ...
Results that may be inaccessible to you are currently showing.
Hide inaccessible results