Extent: | 1 online resource (260 pages) |
---|---|
Type of publication: | Book / Working Paper |
Language: | English |
Notes: | Description based on publisher supplied metadata and other sources. Acknowledgments; Introduction; About This Book; Prerequisites; Chosen Topics; Programming Style; Exercises; Why C++?; 1: Strategies for Problem Solving; Classic Puzzles; The Fox, the Goose, and the Corn; Problem: How to Cross the River?; Sliding Tile Puzzles; Problem: The Sliding Eight; Problem: The Sliding Five; Sudoku; Problem: Completing a Sudoku Square; The Quarrasi Lock; Problem: Opening the Alien Lock; General Problem-Solving Techniques; Always Have a Plan; Restate the Problem; Divide the Problem; Start with What You Know; Reduce the Problem; Look for Analogies; Experiment Don't Get FrustratedExercises; 2: Pure Puzzles; Review of C++ Used in This Chapter; Output Patterns; Problem: Half of a Square; Problem: A Square (Half of a Square Reduction); Problem: A Line (Half of a Square Further Reduction); Problem: Count Down by Counting Up; Problem: A Sideways Triangle; Input Processing; Problem: Luhn Checksum Validation; Breaking Down the Problem; Problem: Convert Character Digit to Integer; Problem: Luhn Checksum Validation, Fixed Length; Problem: Simple Checksum Validation, Fixed Length; Problem: Positive or Negative; Putting the Pieces Together; Tracking State Problem: Decode a MessageProblem: Reading a Number with Three or Four Digits; Problem: Reading a Number with Three or Four Digits, Further Simplified; Conclusion; Exercises; 3: Solving Problems with Arrays; Review of Array Fundamentals; Store; Copy; Retrieval and Search; Sort; Compute Statistics; Solving Problems with Arrays; Problem: Finding the Mode; Refactoring; Arrays of Fixed Data; Non-scalar Arrays; Multidimensional Arrays; Deciding When to Use Arrays; Exercises; 4: Solving Problems with Pointers and Dynamic Memory; Review of Pointer Fundamentals; Benefits of Pointers Runtime-Sized Data StructuresResizable Data Structures; Memory Sharing; When to Use Pointers; Memory Matters; The Stack and the Heap; Memory Size; Lifetime; Solving Pointer Problems; Variable-Length Strings; Problem: Variable-Length String Manipulation; Linked Lists; Problem: Tracking an Unknown Quantity of Student Records; Conclusion and Next Steps; Exercises; 5: Solving Problems with Classes; Review of Class Fundamentals; Goals of Class Use; Encapsulation; Code Reuse; Dividing the Problem; Information Hiding; Readability; Expressiveness; Building a Simple Class; Problem: Class Roster The Basic Class FrameworkSupport Methods; Classes with Dynamic Data; Problem: Tracking an Unknown Quantity of Student Records; Adding a Node; Rearranging the List; Destructor; Deep Copy; The Big Picture for Classes with Dynamic Memory; Mistakes to Avoid; The Fake Class; Single-Taskers; Exercises; 6: Solving Problems with Recursion; Review of Recursion Fundamentals; Head and Tail Recursion; Problem: How Many Parrots?; Approach 1; Approach 2; Problem: Who's Our Best Customer?; Approach 1; Approach 2; The Big Recursive Idea; Problem: Computing the Sum of an Array of Integers; Common Mistakes Too Many Parameters |
ISBN: | 978-1-59327-456-6 ; 1-59327-424-6 ; 978-1-59327-424-5 ; 978-1-59327-424-5 |
Classification: | Programmierung: Allgemeines |
Source: | ECONIS - Online Catalogue of the ZBW |
Persistent link: https://www.econbiz.de/10012684560