Description
Efnisyfirlit
- Cover
- Title Page
- Copyright
- Introduction
- About This Book
- Foolish Assumptions
- Icons Used in This Book
- Beyond the Book
- Where to Go from Here
- Part 1: Getting Started with Algorithms
- Chapter 1: Introducing Algorithms
- Describing Algorithms
- Using Computers to Solve Problems
- Distinguishing between Issues and Solutions
- Structuring Data to Obtain a Solution
- Chapter 2: Considering Algorithm Design
- Starting to Solve a Problem
- Dividing and Conquering
- Learning that Greed Can Be Good
- Computing Costs and Following Heuristics
- Evaluating Algorithms
- Chapter 3: Working with Google Colab
- Defining Google Colab
- Working with Notebooks
- Performing Common Tasks
- Using Hardware Acceleration
- Executing the Code
- Getting Help
- Chapter 4: Performing Essential Data Manipulations Using Python
- Performing Calculations Using Vectors and Matrixes
- Creating Combinations the Right Way
- Getting the Desired Results Using Recursion
- Performing Tasks More Quickly
- Chapter 5: Developing a Matrix Computation Class
- Avoiding the Use of NumPy
- Understanding Why Using a Class is Important
- Building the Basic Class
- Manipulating the Matrix
- Part 2: Understanding the Need to Sort and Search
- Chapter 6: Structuring Data
- Determining the Need for Structure
- Stacking and Piling Data in Order
- Working with Trees
- Representing Relations in a Graph
- Chapter 7: Arranging and Searching Data
- Sorting Data Using Merge Sort and Quick Sort
- Using Search Trees and the Heap
- Relying on Hashing
- Part 3: Exploring the World of Graphs
- Chapter 8: Understanding Graph Basics
- Explaining the Importance of Networks
- Defining How to Draw a Graph
- Measuring Graph Functionality
- Putting a Graph in Numeric Format
- Chapter 9: Reconnecting the Dots
- Traversing a Graph Efficiently
- Sorting the Graph Elements
- Reducing to a Minimum Spanning Tree
- Finding the Shortest Route
- Chapter 10: Discovering Graph Secrets
- Envisioning Social Networks as Graphs
- Navigating a Graph
- Chapter 11: Getting the Right Web page
- Finding the World in a Search Engine
- Explaining the PageRank Algorithm
- Implementing PageRank
- Going Beyond the PageRank Paradigm
- Part 4: Wrangling Big Data
- Chapter 12: Managing Big Data
- Transforming Power into Data
- Streaming Flows of Data
- Sketching an Answer from Stream Data
- Chapter 13: Parallelizing Operations
- Managing Immense Amounts of Data
- Working Out Algorithms for MapReduce
- Chapter 14: Compressing and Concealing Data
- Making Data Smaller
- Hiding Your Secrets with Cryptography
- Part 5: Challenging Difficult Problems
- Chapter 15: Working with Greedy Algorithms
- Deciding When It Is Better to Be Greedy
- Finding Out How Greedy Can Be Useful
- Chapter 16: Relying on Dynamic Programming
- Explaining Dynamic Programming
- Discovering the Best Dynamic Recipes
- Chapter 17: Using Randomized Algorithms
- Defining How Randomization Works
- Putting Randomness into your Logic
- Chapter 18: Performing Local Search
- Understanding Local Search
- Presenting local search tricks
- Solving Satisfiability of Boolean Circuits
- Chapter 19: Employing Linear Programming
- Using Linear Functions as a Tool
- Using Linear Programming in Practice
- Chapter 20: Considering Heuristics
- Differentiating Heuristics
- Routing Robots Using Heuristics
- Explaining Path Finding Algorithms
- Part 6: The Part of Tens
- Chapter 21: Ten Algorithms That Are Changing the World
- Using Sort Routines
- Looking for Things with Search Routines
- Shaking Things Up with Random Numbers
- Performing Data Compression
- Keeping Data Secret
- Changing the Data Domain
- Analyzing Links
- Spotting Data Patterns
- Dealing with Automation and Automatic Responses
- Creating Unique Identifiers
- Chapter 22: Ten Algorithmic Problems Yet to Solve
- Solving Problems Quickly
- Solving 3SUM Problems More Efficiently
- Making Matrix Multiplication Faster
- Determining Whether an Application Will End
- Creating and Using One-Way Functions
- Multiplying Really Large Numbers
- Dividing a Resource Equally
- Reducing Edit Distance Calculation Time
- Playing the Parity Game
- Understanding Spatial Issues
- Index
- About the Authors
- Advertisement Page
- Connect with Dummies
- End User License Agreement
Reviews
There are no reviews yet.