Apress

Advanced Topics in Java

Core Concepts in Data Structures

By Noel Kalicharan

Advanced Topics in Java Cover Image

Advanced Topics in Java teaches concepts that any budding software developer should know. You'll delve into topics such as sorting, searching, merging, recursion, random numbers and simulation, among others. Increase the range of problems you can solve by manipulating versatile and popular data structures such as binary trees and hash tables

Full Description

  • ISBN13: 978-1-4302-6619-8
  • 322 Pages
  • User Level: Intermediate
  • Publication Date: January 2, 2014
  • Available eBook Formats: EPUB, MOBI, PDF
  • Print Book Price: $49.99
  • eBook Price: $34.99
Buy eBook Buy Print Book Add to Wishlist

Related Titles

Full Description

Java is one of the most widely used programming languages today. It was first released by Sun Microsystems in 1995. Over the years, its popularity has grown to the point where it plays an important role in most of our lives. From laptops to data centers, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere! There are tons of applications and heaps of websites that will not work unless you have Java installed, and more are created every day. And, of course, Java is used to power what has become the world's most dominant mobile platform, Android.
 
Advanced Topics In Java teaches the algorithms and concepts that any budding software developer should know. You'll delve into topics such as sorting, searching, merging, recursion, random numbers and simulation, among others. You will increase the range of problems you can solve when you learn how to create and manipulate versatile and popular data structures such as binary trees and hash tables. 
 
This book assumes you have a working knowledge of basic programming concepts such as variables, constants, assignment, selection (if..else) and looping (while, for). It also assumes you are comfortable with writing functions and working with arrays.  If you study this book carefully and do the exercises conscientiously, you would become a better and more agile software developer, more prepared to code today's applications - no matter the language.

What you’ll learn

•      What are and how to use some advanced algorithms, implemented in Java
•      How to create, manipulate and use linked lists, stacks and queues
•      How to use random numbers to program games and simulations
•      How to work with files, binary trees and hash tables
•      Sophisticated sorting methods such as heapsort, quicksort and mergesort
•      How to implement all of the above in Java

Who this book is for

This book is for those with a working knowledge of basic software development topic concepts, such as variables, constants, assignment, selection (if..else) and looping (while, for). It also assumes you are comfortable with writing functions and working with arrays. 

Table of Contents

Table of Contents

1. Sorting, Searching and Merging 
2. Introduction to Objects
3. Linked Lists 
4. Stacks and Queries 
5. Recursion 
6. Random Numbers, Games and Simulation 
7. Working with Files 
8. Introduction to Binary Trees 
9. Advanced Sorting 
10. Hash Tables
Source Code/Downloads

Downloads are available to accompany this book.

Your operating system can likely extract zipped downloads automatically, but you may require software such as WinZip for PC, or StuffIt on a Mac.

Errata

If you think that you've found an error in this book, please let us know about it. You will find any confirmed erratum below, so you can check if your concern has already been addressed.

* Required Fields

No errata are currently published