Java

Cadenhead, Rogers and Taber, Mark. Java 2 in 24 hours. SAMS.net 1999.

Eckel, Bruce. Thinking in Java, 2nd Edition. Prentice Hall, 2000.

The best book to give an experienced non-Java developer an overview of Java. The entire book is on the web at Bruce Eckel's site.

Englander, Robert. Developing Java Beans. Sunsoft Press Java Series, 1997.

Heinle, Nick. Designing With Javascript : Creating Dynamic Web Pages. O'Reilly & Associates, 1997.

Horstmann, Cay S. and Cornell, Gary. Core Java 1.2 : Fundamentals. (Sunsoft Press Java Series), 1999.

 

Data Structures and Algorithms

Goodrich, Michael T. and Tamassia, Roberto. Data Structures and Algorithms in Java. John Wiley & Sons, 1998.

Weiss, Mark Allen. Algorithms, Data Structures, and Problem Solving With C++. Addison-Wesley, 1996