For introductory courses in Python Programming and Data Structures.
A fundamentals-first approach for efficient, elegant code
Introduction to Python Programming and Data Structures, 1st Edition helps 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.
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 skills.
- Engaging examples and problems provide interesting context for 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.
Welcome
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
Appendix A. Python Keywords
Appendix B. The ASCII Character Set
Appendix C. Number Systems
Appendix D. Command Line Arguments
Appendix E. Regular Expressions
Appendix F. Bitwise Operations
Symbol Index
Supplemental Material
Glossary
About our author
Dr. 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. 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. His popular computer science texts are widely used in the world.
Dr. Liang was elected a Java Champion by Sun Microsystems (now Oracle) in 2005. He has given lectures on programming internationally.
Need help? Get in touch