Introduction to Programming in Java : An Interdisciplinary Approach - Robert Sedgewick; Kevin Wayne; Robert Sedgewick; Kevin Wayne (Introduction to Programming in Java : An Interdisciplinary Approach, 2017)