Robert Sedgewick and the late Philippe Flajolet have drawn from both classical mathematics and computer science, integrating discrete mathematics, elementary real analysis, combinatorics, algorithms, and data structures. They emphasize the mathematics needed to support scientific studies that can serve as the basis for predicting algorithm performance and for comparing different algorithms on the basis of performance.
Techniques covered in the first half of the book include recurrences, generating functions, asymptotics, and analytic combinatorics. Structures studied in the second half of the book include permutations, trees, strings, tries, and mappings. Numerous examples are included throughout to illustrate applications to the analysis of algorithms that are playing a critical role in the evolution of our modern computational infrastructure.
Improvements and additions in this new edition includeUpgraded figures and code An all-new chapter introducing analytic combinatorics Simplified derivations via analytic combinatorics throughout
The book’s thorough, self-contained coverage will help readers appreciate the field’s challenges, prepare them for advanced results—covered in their monograph Analytic Combinatorics and in Donald Knuth’s The Art of Computer Programming books—and provide the background they need to keep abreast of new research.
"[Sedgewick and Flajolet] are not only worldwide leaders of the field, they also are masters of exposition. I am sure that every serious computer scientist will find this book rewarding in many ways."
—From the Foreword by Donald E. Knuth
If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with hacking skills you need to get started as a data scientist. Today’s messy glut of data holds answers to questions no one’s even thought to ask. This book provides you with the know-how to dig those answers out.Get a crash course in PythonLearn the basics of linear algebra, statistics, and probability—and understand how and when they're used in data scienceCollect, explore, clean, munge, and manipulate dataDive into the fundamentals of machine learningImplement models such as k-nearest Neighbors, Naive Bayes, linear and logistic regression, decision trees, neural networks, and clusteringExplore recommender systems, natural language processing, network analysis, MapReduce, and databases
Managing daily email is a time-wasting distraction for many, but in today's connected world it's a business necessity. Gmail Tips, Tricks, and Tools shows you how to take control of your inbox with a simple, four-step process for resolving email overwhelm, designed specifically for Gmail users. This fully illustrated, easy-to-read guide first teaches you to become a Gmail power user and then introduces you to a variety of third-party tools that extend the power of Gmail even further.
After a quick refresher on Gmail basics, Gmail Tips, Tricks, and Tools shows you how to
--Master time-savings techniques for managing email and increasing email productivity
--Organize your Gmail inbox with stars, labels, and filters
--Activate Gmail Labs features, including canned responses, multiple inboxes, quick links, and smart labels
--Maximize the productivity potential of the Inbox by Gmail app with reminders, bundles, snoozing, pinning, and sweeping
--Extend the power of Gmail with third-party tools such as IFTTT and Zapier for email automation, Batched Inbox for batching email arrival, and FollowUpThen for powerful, customizable email reminders
--Discover Gmail browser extensions, such as Sidekick by HubSpot for scheduling and tracking messages, FullContact for analyzing your contacts, ActiveInbox for sophisticated task management, and Gmelius for boosting productivity and enhancing privacy