Discovering computer science : interdisciplinary problems, principles, and Python programming
Author(s)
Bibliographic Information
Discovering computer science : interdisciplinary problems, principles, and Python programming
(Chapman & Hall/CRC textbooks in computing / Series editor, John Impagliazzo, Andrew McGetterick)
CRC Press, 2021
2nd ed
- : hbk
Available at 1 libraries
  Aomori
  Iwate
  Miyagi
  Akita
  Yamagata
  Fukushima
  Ibaraki
  Tochigi
  Gunma
  Saitama
  Chiba
  Tokyo
  Kanagawa
  Niigata
  Toyama
  Ishikawa
  Fukui
  Yamanashi
  Nagano
  Gifu
  Shizuoka
  Aichi
  Mie
  Shiga
  Kyoto
  Osaka
  Hyogo
  Nara
  Wakayama
  Tottori
  Shimane
  Okayama
  Hiroshima
  Yamaguchi
  Tokushima
  Kagawa
  Ehime
  Kochi
  Fukuoka
  Saga
  Nagasaki
  Kumamoto
  Oita
  Miyazaki
  Kagoshima
  Okinawa
  Korea
  China
  Thailand
  United Kingdom
  Germany
  Switzerland
  France
  Belgium
  Netherlands
  Sweden
  Norway
  United States of America
Note
"A Chapman & Hall book"
Includes bibliographical references (p. 501-504) and index
Description and Table of Contents
Description
Provides complete update and organization of the previous books, with some material moving online; Includes new problems, projects, and exercises; Includes interactive coding resources to accompany the book, including examples in the text, exercises, projects, and refection questions.
Table of Contents
Preface
Acknowledgments
About the author
How to Solve It
UNDERSTAND THE PROBLEM
DESIGN AN ALGORITHM
WRITE A PROGRAM
LOOK BACK
SUMMARY AND FURTHER DISCOVERY
Visualizing Abstraction
DATA ABSTRACTION
DRAWING FLOWERS AND PLOTTING EARTHQUAKES
FUNCTIONAL ABSTRACTION
PROGRAMMING IN STYLE
A RETURN TO FUNCTIONS
SCOPE AND NAMESPACES
SUMMARY AND FURTHER DISCOVERY
Inside a Computer
COMPUTERS ARE DUMB
EVERYTHING IS BITS
COMPUTER ARITHMETIC
BINARY ARITHMETIC
THE UNIVERSAL MACHINE
Growth and Decay
ACCUMULATORS
DATA VISUALIZATION
CONDITIONAL ITERATION
CONTINUOUS MODELS
NUMERICAL ANALYSIS
SUMMING UP
FURTHER DISCOVERY
PROJECTS
Forks in the Road
RANDOM WALKS
PSEUDORANDOM NUMBER GENERATORS
SIMULATING PROBABILITY DISTRIBUTIONS
BACK TO BOOLEANS
DEFENSIVE PROGRAMMING
GUESS MY NUMBER
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Text, Documents, and DNA
FIRST STEPS
TEXT DOCUMENTS
A CONCORDANCE
WORD FREQUENCY TRENDS
COMPARING TEXTS
TIME COMPLEXITY
COMPUTATIONAL GENOMICS
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Data Analysis
SUMMARY STATISTICS
WRANGLING DATA
TALLYING FREQUENCIES
READING TABULAR DATA
DESIGNING EFFICIENT ALGORITHMS
LINEAR REGRESSION
DATA CLUSTERING
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Flatland
TABULAR DATA
THE GAME OF LIFE
DIGITAL IMAGES
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Self-similarity and Recursion
FRACTALS
RECURSION AND ITERATION
THE MYTHICAL TOWER OF HANOI
RECURSIVE LINEAR SEARCH
DIVIDE AND CONQUER
LINDENMAYER SYSTEMS
9SUMMARY AND FURTHER DISCOVERY
PROJECTS
Organizing Data
BINARY SEARCH
SELECTION SORT
INSERTION SORT
EFFICIENT SORTING
TRACTABLE AND INTRACTABLE ALGORITHMS
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Networks
MODELING WITH GRAPHS
SHORTEST PATHS
IT'S A SMALL WORLD
RANDOM GRAPHS
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Object-oriented Design
SIMULATING AN EPIDEMIC
OPERATORS AND POLYMORPHISM
A FLOCKING SIMULATION
A STACK ADT
A DICTIONARY ADT
SUMMARY AND FURTHER DISCOVERY
PROJECTS
Bibliography
Appendix A Python Library
Appendix B Selected Exercise
Index
by "Nielsen BookData"