A walkthrough of computer science concepts you must know. Designed for readers who don't care for academic formalities, it's a fast and easy computer science guide. It teaches the foundations you need to program computers effectively. After a simple introduction to discrete math, it presents common algorithms and data structures. It also outlines the principles that make computers and programming languages work.
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
Companion 20-part series of video lecturesÂ is available atÂ informit.com/title/9780134493831
Computer Science: An Overview is intended for use in the Introduction to Computer Science course. It is also suitable for all readers interested in a breadth-first introduction to computer science.
Computer Science uses broad coverage and clear exposition to present a complete picture of the dynamic computer science field. Accessible to students from all backgrounds, Glenn Brookshear and Dennis Brylow encourage the development of a practical, realistic understanding of the field. An overview of each of the important areas of Computer Science provides students with a general level of proficiency for future courses. This new edition incorporates an introduction to the Python programming language into key chapters.
Teaching and Learning Experience
This program will provide a better teaching and learning experienceâfor you and your students. It will help:
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries. Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone whoâs ever wondered about the secret inner life of computers and other smart machines. Itâs a cleverly illustrated and eminently comprehensible storyâand along the way, youâll discover youâve gained a real context for understanding todayâs world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm youâand perhaps even awaken the technophile within.
For the Introduction to Computer Science course.
A broad exploration of computer scienceâwith the depth needed to understand concepts
Computer Science: An Overview provides a bottom-up, concrete-to-abstract foundation that students can build upon to see the relevance and interrelationships of future computer science courses. Its comprehensive coverage and clear language are accessible to students from all backgrounds, encouraging a practical and realistic understanding.
More than 1,000 questions and exercises, Chapter Review Problems, and Social Issues questions reinforce core concepts. The 13th Edition continues its focus on Python to provide programming tools for exploration and experimentation. A new full-color design reflects the use of color in most modern programming interfaces to aid the programmerâs understanding of code. Syntax coloring is now used more effectively for clarifying code and pseudocode segments in the text, and many figures and diagrams are now rendered more descriptively.
This book introduces the mathematics that supports advanced computer programming and the analysis of algorithms. The primary aim of its well-known authors is to provide a solid and relevant base of mathematical skills - the skills needed to solve complex problems, to evaluate horrendous sums, and to discover subtle patterns in data. It is an indispensable text and reference not only for computer scientists - the authors themselves rely heavily on it! - but for serious users of mathematics in virtually every discipline.
Concrete Mathematics is a blending of CONtinuous and disCRETE mathematics. "More concretely," the authors explain, "it is the controlled manipulation of mathematical formulas, using a collection of techniques for solving problems." The subject matter is primarily an expansion of the Mathematical Preliminaries section in Knuth's classic Art of Computer Programming, but the style of presentation is more leisurely, and individual topics are covered more deeply. Several new topics have been added, and the most significant ideas have been traced to their historical roots. The book includes more than 500 exercises, divided into six categories. Complete answers are provided for all exercises, except research problems, making the book particularly valuable for self-study.
Major topics include:
This second edition includes important new material about mechanical summation. In response to the widespread use of the first edition as a reference book, the bibliography and index have also been expanded, and additional nontrivial improvements can be found on almost every page. Readers will appreciate the informal style of Concrete Mathematics. Particularly enjoyable are the marginal graffiti contributed by students who have taken courses based on this material. The authors want to convey not only the importance of the techniques presented, but some of the fun in learning and using them.
What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of the new and familiar is the most fulfilling? These may seem like uniquely human quandaries, but they are not. Computers, like us, confront limited space and time, so computer scientists have been grappling with similar problems for decades. And the solutions theyâve found have much to teach us.
In a dazzlingly interdisciplinary work, Brian Christian and Tom Griffiths show how algorithms developed for computers also untangle very human questions. They explain how to have better hunches and when to leave things to chance, how to deal with overwhelming choices and how best to connect with others. From finding a spouse to finding a parking spot, from organizing oneâs inbox to peering into the future, Algorithms to Live By transforms the wisdom of computer science into strategies for human living.
Manage research, learning and skills at IT1me. Create an account using LinkedIn to manage and organize your IT knowledge. IT1me works like a shopping cart for information -- helping you to save, discuss and share.