Y. Daniel Liang
For training in the Java programming language.
An introduction to the essential programming principles and techniques, with an emphasis on the fundamentals.
Programming, data structures, and algorithm design are all covered in depth within the context of a single book titled Introduction to Java Programming and Data Structures. Before moving on to teach students object-oriented programming and advanced Java programming, the text provides a solid foundation of essential programming concepts and techniques with an emphasis on getting students comfortable with the fundamentals first. Liang discusses programming in a manner that is problem-driven and places more emphasis on problem-solving than on grammar. He illustrates fundamental concepts via the use of examples and provides students with a huge variety of exercises that range in level of complexity for them to practice. Clarity, presentation, content, examples, and exercises have all been improved throughout the 12th Edition through extensive revisions that cover every area.