Elements of Programming Interviews: The Insiders' Guide C++


Adnan Aziz - 2012
    The problems are challenging, well-motivated, and accessible. They are representative of the questions asked at interviews at the most exciting companies.The book begins with a summary of patterns for data structure, algorithms, and problem solving that will help you solve the most challenging interview problems. This is followed by chapters on basic and advanced data structures, algorithm design, concurrency, system design, probability and discrete mathematics. Each chapter starts with a brief review of key concepts and results followed by a deep and wide set of questions.EPI concludes with a summary of the nontechnical aspects of interviewing, including common mistakes, strategies for a great interview, perspectives from across the table, negotiating the best offer, and much more."This book is the best compilation of programming related problems I have seen. It is a great resource for a diverse set of topics when preparing for technical interviews, as a quick refresher in a subject area or when you are just looking for a brain teaser to challenge yourself." Shashank Gupta / Scaligent, formerly Engineering Manager, Amazon.com, Senior Engineering Manager, Yahoo!, Manager of Software Development, Cisco Systems

Machine Learning: A Probabilistic Perspective


Kevin P. Murphy - 2012
    Machine learning provides these, developing methods that can automatically detect patterns in data and then use the uncovered patterns to predict future data. This textbook offers a comprehensive and self-contained introduction to the field of machine learning, based on a unified, probabilistic approach.The coverage combines breadth and depth, offering necessary background material on such topics as probability, optimization, and linear algebra as well as discussion of recent developments in the field, including conditional random fields, L1 regularization, and deep learning. The book is written in an informal, accessible style, complete with pseudo-code for the most important algorithms. All topics are copiously illustrated with color images and worked examples drawn from such application domains as biology, text processing, computer vision, and robotics. Rather than providing a cookbook of different heuristic methods, the book stresses a principled model-based approach, often using the language of graphical models to specify models in a concise and intuitive way. Almost all the models described have been implemented in a MATLAB software package—PMTK (probabilistic modeling toolkit)—that is freely available online. The book is suitable for upper-level undergraduates with an introductory-level college math background and beginning graduate students.

A New Kind of Science


Stephen Wolfram - 1997
    Wolfram lets the world see his work in A New Kind of Science, a gorgeous, 1,280-page tome more than a decade in the making. With patience, insight, and self-confidence to spare, Wolfram outlines a fundamental new way of modeling complex systems. On the frontier of complexity science since he was a boy, Wolfram is a champion of cellular automata--256 "programs" governed by simple nonmathematical rules. He points out that even the most complex equations fail to accurately model biological systems, but the simplest cellular automata can produce results straight out of nature--tree branches, stream eddies, and leopard spots, for instance. The graphics in A New Kind of Science show striking resemblance to the patterns we see in nature every day. Wolfram wrote the book in a distinct style meant to make it easy to read, even for nontechies; a basic familiarity with logic is helpful but not essential. Readers will find themselves swept away by the elegant simplicity of Wolfram's ideas and the accidental artistry of the cellular automaton models. Whether or not Wolfram's revolution ultimately gives us the keys to the universe, his new science is absolutely awe-inspiring. --Therese Littleton

The Golden Ticket: P, Np, and the Search for the Impossible


Lance Fortnow - 2013
    Simply stated, it asks whether every problem whose solution can be quickly checked by computer can also be quickly solved by computer. The Golden Ticket provides a nontechnical introduction to P-NP, its rich history, and its algorithmic implications for everything we do with computers and beyond. Lance Fortnow traces the history and development of P-NP, giving examples from a variety of disciplines, including economics, physics, and biology. He explores problems that capture the full difficulty of the P-NP dilemma, from discovering the shortest route through all the rides at Disney World to finding large groups of friends on Facebook. The Golden Ticket explores what we truly can and cannot achieve computationally, describing the benefits and unexpected challenges of this compelling problem.

Data Structures and Algorithms in Python


Michael T. Goodrich - 2012
     Data Structures and Algorithms in Python is the first mainstream object-oriented book available for the Python data structures course. Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and Algorithms in C++.

Reinforcement Learning: An Introduction


Richard S. Sutton - 1998
    Their discussion ranges from the history of the field's intellectual foundations to the most recent developments and applications.Reinforcement learning, one of the most active research areas in artificial intelligence, is a computational approach to learning whereby an agent tries to maximize the total amount of reward it receives when interacting with a complex, uncertain environment. In Reinforcement Learning, Richard Sutton and Andrew Barto provide a clear and simple account of the key ideas and algorithms of reinforcement learning. Their discussion ranges from the history of the field's intellectual foundations to the most recent developments and applications. The only necessary mathematical background is familiarity with elementary concepts of probability.The book is divided into three parts. Part I defines the reinforcement learning problem in terms of Markov decision processes. Part II provides basic solution methods: dynamic programming, Monte Carlo methods, and temporal-difference learning. Part III presents a unified view of the solution methods and incorporates artificial neural networks, eligibility traces, and planning; the two final chapters present case studies and consider the future of reinforcement learning.

Data Structures and Algorithms


Alfred V. Aho - 1983
    Algorithm design techniques are also stressed and basic algorithm analysis is covered. Most of the programs are written in Pascal.

Game Theory 101: The Basics


William Spaniel - 2011
    From the first lesson to the last, each chapter introduces games of increasing complexity and then teaches the game theoretical tools necessary to solve them. Inside, you will find: All the basics fully explained, including pure strategy Nash equilibrium, mixed strategy Nash equilibrium, the mixed strategy algorithm, how to calculate payoffs, strict dominance, weak dominance, iterated elimination of strictly dominated strategies, iterated elimination of weakly dominated strategies, and more! Dozens of games solved, including the prisoner's dilemma, stag hunt, matching pennies, zero sum games, battle of the sexes/Bach or Stravinsky, chicken/snowdrift, pure coordination, deadlock, and safety in numbers! Crystal clear, line-by-line calculations of every step, with more than 200 images so you don't miss a thing! Tons of applications: war, trade, game shows, and duopolistic competition. Quick, efficient, and to the point, Game Theory 101: The Basics is perfect for introductory game theory, intermediate microeconomics, and political science.

Tunney: Boxing's Brainiest Champ and His Upset of the Great Jack Dempsey


Jack Cavanaugh - 2006
    Yet within a few years of retiring from the ring, Tunney willingly receded into the background, renouncing the image of jock celebrity that became the stock in trade of so many of his contemporaries. To this day, Gene Tunney’s name is most often recognized only in conjunction with his epic “long count” second bout with Dempsey.In Tunney, the veteran journalist and author Jack Cavanaugh gives an account of the incomparable sporting milieu of the Roaring Twenties, centered around Gene Tunney and Jack Dempsey, the gladiators whose two titanic clashes transfixed a nation. Cavanaugh traces Tunney’s life and career, taking us from the mean streets of Tunney’s native Greenwich Village to the Greenwich, Connecticut, home of his only love, the heiress Polly Lauder; from Parris Island to Yale University; from Tunney learning fisticuffs as a skinny kid at the knee of his longshoreman father to his reign atop boxing’s glamorous heavyweight division. Gene Tunney defied easy categorization, as a fighter and as a person. He was a sex symbol, a master of defensive boxing strategy, and the possessor of a powerful, and occasionally showy, intellect–qualities that prompted the great sportswriters of the golden age of sports to portray Tunney as “aloof.” This intelligence would later serve him well in the corporate world, as CEO of several major companies and as a patron of the arts. And while the public craved reports of bad blood between Tunney and Dempsey, the pair were, in reality, respectful ring adversaries who in retirement grew to share a sincere lifelong friendship–with Dempsey even stumping for Tunney’s son, John, during the younger Tunney’s successful run for Congress. Tunney offers a unique perspective on sports, celebrity, and popular culture in the 1920s. But more than an exciting and insightful real-life tale, replete with heads of state, irrepressible showmen, mobsters, Hollywood luminaries, and the cream of New York society, Tunney is an irresistible story of an American underdog who forever changed the way fans look at their heroes.From the Hardcover edition.

Introduction to Probability


Dimitri P. Bertsekas - 2002
    This is the currently used textbook for "Probabilistic Systems Analysis," an introductory probability course at the Massachusetts Institute of Technology, attended by a large number of undergraduate and graduate students. The book covers the fundamentals of probability theory (probabilistic models, discrete and continuous random variables, multiple random variables, and limit theorems), which are typically part of a first course on the subject. It also contains, a number of more advanced topics, from which an instructor can choose to match the goals of a particular course. These topics include transforms, sums of random variables, least squares estimation, the bivariate normal distribution, and a fairly detailed introduction to Bernoulli, Poisson, and Markov processes. The book strikes a balance between simplicity in exposition and sophistication in analytical reasoning. Some of the more mathematically rigorous analysis has been just intuitively explained in the text, but is developed in detail (at the level of advanced calculus) in the numerous solved theoretical problems. The book has been widely adopted for classroom use in introductory probability courses within the USA and abroad.

Alan Turing: The Enigma


Andrew Hodges - 1983
    His breaking of the German U-boat Enigma cipher in World War II ensured Allied-American control of the Atlantic. But Turing's vision went far beyond the desperate wartime struggle. Already in the 1930s he had defined the concept of the universal machine, which underpins the computer revolution. In 1945 he was a pioneer of electronic computer design. But Turing's true goal was the scientific understanding of the mind, brought out in the drama and wit of the famous "Turing test" for machine intelligence and in his prophecy for the twenty-first century.Drawn in to the cockpit of world events and the forefront of technological innovation, Alan Turing was also an innocent and unpretentious gay man trying to live in a society that criminalized him. In 1952 he revealed his homosexuality and was forced to participate in a humiliating treatment program, and was ever after regarded as a security risk. His suicide in 1954 remains one of the many enigmas in an astonishing life story.

Haskell: The Craft of Functional Programming


Simon Thompson - 1996
    Running examples and case studies highlight new concepts and alternative approaches to program design.

Network Security: Private Communication in a Public World


Charlie Kaufman - 1995
    In the second edition of Network Security, this most distinguished of author teams draws on hard-won experience to explain every facet of information security, from the basics to advanced cryptography and authentication; secure Web and email services; and emerging security standards. Highlights of the book's extensive new coverage include Advanced Encryption Standard (AES), IPsec, SSL, PKI Standards, and Web security.

Project Puffin: The Improbable Quest to Bring a Beloved Seabird Back to Egg Rock


Stephen W. Kress - 1997
    As a young ornithology instructor at the Hog Island Audubon Camp, Dr. Stephen W. Kress learned that puffins had nested on nearby islands until extirpated by hunters in the late 1800s. To right this environmental wrong, he resolved to bring puffins back to one such island—Eastern Egg Rock. Yet bringing the plan to reality meant convincing skeptics, finding resources, and inventing restoration methods at a time when many believed in “letting nature take its course.” Today, Project Puffin has restored more than 1,000 puffin pairs to three Maine islands. But even more exciting, techniques developed during the project have helped to restore rare and endangered seabirds worldwide. Further, reestablished puffins now serve as a window into the effects of global warming. The success of Dr. Kress’s project offers hope that people can restore lost wildlife populations and the habitats that support them. The need for such inspiration has never been greater.

Computational Fluid Dynamics


John D. Anderson Jr. - 1995
    It can also serve as a one-semester introductory course at the beginning graduate level, as a useful precursor to a more serious study of CFD in advanced books. It is presented in a very readable, informal, enjoyable style.