Introduction to Python Programming and Data Structures, 3rd edition

Published by Pearson (June 15, 2022) © 2023

  • Y Daniel Liang Georgia Southern University

eTextbook

C$49.99

  • Easy-to-use search and navigation
  • Add notes and highlights
  • Flashcards help streamline study sessions

Revel

C$84.99

  • Inspire engagement through active learning
  • Provide an immersive reading experience
  • Assess student progress with performance insights

For introductory courses in Python programming and data structures.

A fundamentals-first approach to programming helps students create efficient, elegant code

Introduction to Python Programming and Data Structures focuses on the fundamentals first to help beginning students learn problem solving and programming in a broad context. It introduces basic programming concepts and techniques on selections, loops and functions, before writing custom classes. Problems and exercises with varying levels of difficulty cover interesting application areas to engage and motivate students.

The 3rd Edition has new data structures topics and up-to-date content, examples and exercises that keep pace with recent trends.

Hallmark features of this title

  • A problem-driven, fundamentals-first approach focuses on problem solving rather than syntax.
  • The step-by-step presentation starts at the beginning, teaching basic concepts and techniques before writing custom classes. Topics flow from fundamentals to object-oriented programming, from simple functions to STL, and from simple data types to classic structures.
  • Programming exercises are grouped by level of difficulty to give students many opportunities to practice and apply their skills.
  • Engaging examples and problems provide interesting context for learning concepts. Examples are drawn from math, science, business, finance, gaming, animation and multimedia to make the material more relatable.
  • Flexible chapter ordering allows instructors to skip or cover graphics later.

New and updated features of this title

  • UPDATED: Examples and exercises keep pace with recent programming trends to motivate students' interest. Additional exercises are provided for instructors to use in class or to assign.
  • UPDATED: Section 1.2  includes cloud storage and touchscreens.
  • NEW: Section 3.14 introduces the new Python 10 match-case statements to simplify coding for multiple cases. F-strings are covered in Chapter 4 to provide a concise syntax to format strings for output.
  • UPDATED: Statistic functions are covered in Chapter 7 to enable students to write simple code for common statistic tasks.
  • UPDATED: Additional data structures coverage discusses string matching in Chapter 16, graph algorithms in Chapter 22, and optional materials for a data structures course in Chapter 23.
  • NEW: Appendices G and H. G gives a precise mathematical definition for the Big-O notation as well as the Big-Omega and Big-Theta notations. H lists Python operators and their precedence order.

Features of Revel for the 3rd Edition

  • Assignable and automatically graded programing exercises let students experience the power of practice and get immediate personalized feedback based on their responses. End-of-section quizzes and end-of-chapter projects let you gauge their comprehension frequently to address learning gaps.
  • VideoNotes show how to solve problems completely in narrated step-by-step tutorials.
  • Live code examples let students practice in a live coding environment by modifying populated code and viewing the results.
  • Code animations step students through the code line-by-line, showing what happens in the program.
  • Checkpoint self-assessments test students' knowledge with multiple-choice and matching questions at the end of each section.
  • NEW: Video quizzes let students further their knowledge and test their understanding. You can share videos accompanied by time-stamped multiple-choice questions.
  • NEW: Shared multimedia assignments make it easy for you and your students to post and respond to videos and media. Students can record and upload presentations for grading, comments or peer review.
  • UPDATED: Create your own scored assessment items to add to existing end-of-section and end-of-chapter quiz sets.
  1. Introduction to Computers, Programs, and Python
  2. Elementary Programming
  3. Selections
  4. Mathematical Functions, Strings, and Objects
  5. Loops
  6. Functions
  7. Lists
  8. Multidimensional Lists
  9. Objects and Classes
  10. Basic GUI Programming Using Tkinter
  11. Advanced GUI Programming Using Tkinter
  12. Inheritance and Polymorphism
  13. Files and Exception Handling
  14. Tuples, Sets, and Dictionaries
  15. Recursion
  16. Developing Efficient Algorithms
  17. Sorting
  18. Linked Lists, Stacks, Queues, and Priority Queues
  19. Binary Search Trees
  20. AVL Trees
  21. Hashing
  22. Graphs and Applications
  23. Weighted Graphs and Applications

Appendices

  1. Python Keywords
  2. The ASCII Character Set
  3. Number Systems
  4. Command Line Arguments
  5. Regular Expressions
  6. Bitwise Operations
  7. The Big-O, Big Omega, and Big-Theta Notations
  8. Operator Precedence Chart

About our author

Dr. Y. Daniel Liang earned his Ph.D. in Computer Science from the University of Oklahoma in 1991, and an MS and BS in Computer Science from Fudan University in Shanghai, China, in 1986 and 1983. Prior to joining Armstrong, he was an associate professor in computer science at Purdue University in Fort Wayne, where he twice received the Excellence in Research award.

Dr. Liang was trained in theoretical computer science. He was active in graph algorithms from 1990 to 1995 and published more than ten papers in several established journals such as SIAM Journal on Computing, Discrete Applied Mathematics, Acta Informatics, and Information Processing Letters. Since 1996, he has devoted himself to writing texts and published more than thirty books with Pearson. His popular computer science texts are widely adopted in the world.

Dr. Liang was elected a Java Champion in 2005 by Sun Microsystems and has given lectures on Java internationally.

Need help? Get in touch

Pearson+

All in one place. Pearson+ offers instant access to eTextbooks, videos and study tools in one intuitive interface. Students choose how they learn best with enhanced search, audio and flashcards. The Pearson+ app lets them read where life takes them, no wi-fi needed. Students can access Pearson+ through a subscription or their MyLab or Mastering course.

Revel

Inspire engagement through active learning. Revel® integrates interactives and assessments into a compelling digital narrative. By applying concepts as they read, students immerse themselves in learning, deepening their understanding. This mobile, user-friendly platform empowers students to learn and study on the go, anytime, anywhere, on any device.

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable by deleting your cookies.

Help students learn, wherever life takes them

Your students deserve more than just a digital textbook. Revel® combines content, media, and assessment to create an engaging, immersive experience that lets them learn on the go — anytime, anywhere, on any device.