Algorithm, Data Structure and Java Programming Program