A fundamentals-first approach to programming helps you create efficient, elegant code.
Revel® for Introduction to Programming with C++ and Data Structures helps you learn essential programming concepts and practice coding in one continuous experience — anytime, anywhere, and on any device. Author Daniel Liang introduces basic programming concepts using a fundamentals-first approach that prepares you to learn object-oriented and advanced C++ programming. More than a digital textbook, Revel delivers an engaging blend of tutorial videos, code animations, coding interactives, self-test items, and graded code assessment interweaved in Liang's proven narrative content and pedagogy. Thousands of contextual examples help you learn how to use programming to solve problems. Up-to-date content reflects recent programming trends, such as cloud storage and touchscreens, and all code is compatible with C++17.

NOTE: Revel is a fully digital delivery of Pearson content. This ISBN is for the standalone Revel access card. In addition to this access card, you will need a course invite link, provided by your instructor, to register for and use Revel. 

Les mer

Part I: Fundamentals of Programming
1. Introduction to Computers, Programming, and C++
2. Elementary Programming
3. Selections
4. Mathematical Functions, Characters, and Strings
5. Loops
6. Functions
7. Single-Dimensional Arrays and C-Strings
8. Multidimensional Arrays

Part II: Object-Oriented Programming
9. Objects and Classes
10. Object-Oriented Thinking
11. Pointers and Dynamic Memory Management
12. Templates, Vectors, and Stacks
13. File Input and Output
14. Operator Overloading
15. Inheritance and Polymorphism
16. Exception Handling

Part III: Data Structures and Advanced Topics
17. Recursion
18. Developing Efficient Algorithms
19. Sorting
20. Linked Lists, Queues, and Priority Queues
21. Binary Search Trees
22. STL Containers
23. STL Algorithms
24. Hashing
25. AVL Trees
26. Graph Applications
27. Weighted Graph Applications

Appendices
Appendix A: C++ Keywords
Appendix B: The ASCII Character Set
Appendix C: Operator Precedence Chart
Appendix D: Number Systems
Appendix E: Bitwise Operations
Appendix F: Using Command-Line Arguments
Appendix G: Enumerated Types
Appendix H: Regular Expressions
Appendix I: The Big-O, Big-Omega, and Big-Theta Notations

Les mer
Hallmark features of this title A fundamentals-first approach
  • A problem-driven, fundamentals-first approach to programming focuses on problem solving rather than syntax. Students start at the beginning, learning important basic concepts and techniques before moving on to more advanced topics.
  • The step-by-step presentation guides students in learning essential subjects incrementally. Topics flow naturally from fundamental programming techniques to object-oriented programming, and from simple data types to classic structures.
  • A large variety of engaging examples and problems provide an interesting fun context for learning concepts. Examples drawn from math, science, business, finance, gaming, animation and multimedia bring concepts to life and make the material more relatable.
Les mer
New and updated features of this title Up-to-date content keeps pace with the C++ language and recent programming trends
  • UPDATED: Code and discussions are compatible with the C++17. In C++17, exception specifiers are no longer supported. All code that uses exception specifiers is modified.
  • UPDATED: Section 1.2 includes cloud storage and touchscreens.
  • UPDATED: Section 4.8.4 discusses token-based input vs. line-based input.
  • NEW: Section 18.11 presents three string matching algorithms: brute-force, Boyce-Moore, and KMP.
  • NEW: Section 21.1 presents data compression using Hoffman encoding.
  • NEW: Appendix I gives a precise mathematical definition for the Big-O notation as well as the Big-Omega and Big-Theta notations.
Les mer

Produktdetaljer

ISBN
9780136922049
Publisert
2021-02-08
Utgave
5. utgave
Utgiver
Pearson Education (US)
Aldersnivå
U, 05
Språk
Product language
Engelsk
Format
Product format
Lisensnøkkel fysisk

Forfatter

Biografisk notat

About our author

Dr. Daniel Liang earned his Ph.D. in Computer Science from the University of Oklahoma in 1991 and his M.S. and B.S. in Computer Science from Fudan University in Shanghai, China in 1986 and 1983. Prior to joining Armstrong State University (now merged with Georgia Southern University), he was an Associate Professor in computer science at Purdue University in Fort Wayne, Indiana, where he twice received the Excellence in Research award.

Dr. Liang is currently a Professor of Computer Science at Georgia Southern University and has given lectures on programming internationally. He was trained in theoretical computer science. He has published in the SIAM Journal on Computing, Discrete Applied Mathematics, Acta Informatics and Information Processing Letters. He is the author of more than 30 books and his popular computer science texts are widely used throughout the world.