Buffer ADT and Its Implementation (A Practical Guide to Data Structures and Algorithms using Java ; page 294-299 ; ISBN 9780429147104, 2007)