Java Foundations: Introduction to Program Design and Data Structures 5th Edition By John Lewis, Peter DePasquale, Joe Chase
$30.00
Secure checkout
Instant digital download
PDF document
Document details
- Pages
- 1,094
- File size
- 13.59 MB
- Format
- Digital PDF
- Course
- Education
- Category
- eBook[PDF]
Sign in or create a free account to continue. Your purchase will be saved in My Downloads.
About this ebook
Java Foundations: Introduction to Program Design and Data Structures (5th Edition) by John Lewis, Peter DePasquale, and Joe Chase covers introductory programming concepts, object-oriented software design, and the implementation of fundamental data structures. The signature update in the 5th edition is a complete transition from Swing to JavaFX for all Graphical User Interface (GUI) topics. [1, 2, 3, 4]
Part 1: Basic Programming & Object-Oriented Design
- Introduction: Introduction to Java, software development environments, and basic object-oriented concepts.
- Data and Expressions: Primitive data types, expressions, operator precedence, data conversion, and reading interactive user input via the
Scannerclass. - Using Classes and Objects: Predefined classes, manipulating strings, generating random numbers, math operations, packages, enumerated types, and wrapper classes.
- Conditionals and Loops: Boolean expressions, control flow statements (
if,switch,while,do,for), the enhanced for-each loop, and file input parsing. - Writing Classes: Anatomy of a class, instance data, visibility modifiers, scope, method design, parameter passing, constructors, method overloading, static members, and software testing/debugging.
- Graphical User Interfaces (GUIs): Building modern graphical user interfaces using the JavaFX framework, event handling, and layout panes.
- Arrays: Creating and using arrays, bounds checking, arrays of objects, command-line arguments, variable-length argument lists (
varargs), and multidimensional arrays. - Inheritance: Class hierarchies, deriving subclasses, overriding methods, the
superreference, and theObjectclass hierarchy. - Polymorphism: Polymorphic references, compile-time vs. run-time binding, interfaces, and polymorphic design.
- Exceptions: Error handling categories, the
try-catchstatement, exception propagation, throwing custom exceptions, and stream-based text file I/O. [1, 2, 3, 4, 5]
Part 2: Algorithms & Advanced Data Structures
- Analysis of Algorithms: Introduction to efficiency, Growth functions, and Big-O notation.
- Stacks: Stack collection concepts, array-based stack implementations, and linked data structure stack implementations.
- Queues: Queue collection processing, array-based queues (including circular queues), and linked queue structures.
- Lists: Ordered, unordered, and indexed lists; comparing and contrasting list operations alongside inheritance-driven design implementations.
- Iterators: Concepts, design, and implementation of explicit iterator components to support collection traversal.
- Recursion: Principles of recursion, programming recursive methods, and classic problems (e.g., Towers of Hanoi).
- Searching and Sorting: Linear and binary search algorithms; selection sort, insertion sort, bubble sort, merge sort, and quicksort analysis.
- Trees & Binary Search Trees: Tree definitions, traversals (pre-order, in-order, post-order), binary search tree operations, and balanced tree issues.
- Heaps & Priority Queues: Heap concepts, array implementations, and priority queue applications.
- Sets and Maps: Concept of collection structures mapping keys to values, hashing functions, and performance traits.
- Multi-way Search Trees: 2-3 trees, 2-4 trees, B-trees, and AVL self-balancing strategies.
- Graphs: Directed and undirected graphs, graph traversal algorithms (breadth-first and depth-first), and minimum spanning trees.
- Databases: Relational database abstractions and executing basic database transaction interactions from Java code. [1, 2, 3]
File included
tmpphpXBFnxd
13.59 MB