Java Programming: Program Design Including Data Structures - D.S Malik