Book description
Named a Notable Book in the 21st Annual Best of Computing list by the ACM!
Robert Sedgewick and Kevin Wayne’s Computer Science: An Interdisciplinary Approach is the ideal modern introduction to computer science with Java programming for both students and professionals. Taking a broad, applications-based approach, Sedgewick and Wayne teach through important examples from science, mathematics, engineering, finance, and commercial computing.
The book demystifies computation, explains its intellectual underpinnings, and covers the essential elements of programming and computational problem solving in today’s environments. The authors begin by introducing basic programming elements such as variables, conditionals, loops, arrays, and I/O. Next, they turn to functions, introducing key modular programming concepts, including components and reuse. They present a modern introduction to object-oriented programming, covering current programming paradigms and approaches to data abstraction.
Building on this foundation, Sedgewick and Wayne widen their focus to the broader discipline of computer science. They introduce classical sorting and searching algorithms, fundamental data structures and their application, and scientific techniques for assessing an implementation’s performance. Using abstract models, readers learn to answer basic questions about computation, gaining insight for practical application. Finally, the authors show how machine architecture links the theory of computing to real computers, and to the field’s history and evolution.
For each concept, the authors present all the information readers need to build confidence, together with examples that solve intriguing problems. Each chapter contains question-and-answer sections, self-study drills, and challenging problems that demand creative solutions.
Companion web site (introcs.cs.princeton.edu/java) contains
Extensive supplementary information, including suggested approaches to programming assignments, checklists, and FAQs
Graphics and sound libraries
Links to program code and test data
Solutions to selected exercises
Chapter summaries
Detailed instructions for installing a Java programming environment
Detailed problem sets and projects
Table of contents
- Cover Page
- About This E-Book
- Title Page
- Copyright Page
- Dedication Page
- Contents
- Programs
- Circuits
- Preface
-
Chapter One. Elements of Programming
- 1.1 Your First Program
- Q&A
- Exercises
- 1.2 Built-in Types of Data
- Q&A (Strings)
- Q&A (Integers)
- Q&A (Floating-Point Numbers)
- Q&A (Variables and Expressions)
- Exercises
- Creative Exercises
- 1.3 Conditionals and Loops
- Q&A
- Exercises
- Creative Exercises
- 1.4 Arrays
- Q&A
- Exercises
- Creative Exercises
- 1.5 Input and Output
- Q&A
- Exercises
- Creative Exercises
- 1.6 Case Study: Random Web Surfer
- Exercises
- Creative Exercises
- Chapter Two. Functions and Modules
- Chapter Three. Object-Oriented Programming
-
Chapter Four. Algorithms and Data Structures
- 4.1 Performance
- Q&A
- Exercises
- Creative Exercises
- 4.2 Sorting and Searching
- Q&A
- Exercises
- Creative Exercises
- 4.3 Stacks and Queues
- Q&A
- Exercises
- Linked-List Exercises
- Creative Exercises
- 4.4 Symbol Tables
- Q&A
- Exercises
- Binary Tree Exercises
- Creative Exercises
- 4.5 Case Study: Small-World Phenomenon
- Q&A
- Exercises
- Creative Exercises
- Chapter Five. Theory of Computing
- Chapter Six. A Computing Machine
- Chapter Seven. Building a Computing Device
- Context
- Glossary
- Index
- APIs
- Code Snippets
Product information
- Title: Computer Science: An Interdisciplinary Approach
- Author(s):
- Release date: June 2016
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780134076461
You might also like
video
Computer Science
22+ Hours of Video Instruction Overview These Computer Science Video Lectures cover fundamental concepts that provide …
book
Introduction to Programming in Python: An Interdisciplinary Approach
Today, anyone in a scientific or technical discipline needs programming skills. Python is an ideal first …
book
Classic Computer Science Problems in Python
Classic Computer Science Problems in Python deepens your knowledge of problem solving techniques from the realm …
book
Introduction to Computational Thinking: Problem Solving, Algorithms, Data Structures, and More
Learn approaches of computational thinking and the art of designing algorithms. Most of the algorithms you …