Algorithms illuminated:
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
New York, NY
Soundlikeyourself Publishing
[2022]
|
Ausgabe: | (Omnibus edition) |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | xvii, 671 Seiten Illustrationen, Diagramme |
ISBN: | 9780999282984 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV048804226 | ||
003 | DE-604 | ||
005 | 20240701 | ||
007 | t | ||
008 | 230207s2022 xxua||| |||| 00||| eng d | ||
020 | |a 9780999282984 |c hardback |9 978-0-9992829-8-4 | ||
035 | |a (OCoLC)1342828743 | ||
035 | |a (DE-599)KXP1820835227 | ||
040 | |a DE-604 |b ger |e rda | ||
041 | 0 | |a eng | |
044 | |a xxu |c XD-US | ||
049 | |a DE-20 |a DE-898 |a DE-706 |a DE-523 |a DE-573 |a DE-188 |a DE-B768 |a DE-11 |a DE-355 | ||
084 | |a ST 110 |0 (DE-625)143583: |2 rvk | ||
084 | |a ST 134 |0 (DE-625)143590: |2 rvk | ||
084 | |a 54.51 |2 bkl | ||
084 | |a 54.10 |2 bkl | ||
100 | 1 | |a Roughgarden, Tim |d 1975- |e Verfasser |0 (DE-588)1117167275 |4 aut | |
245 | 1 | 0 | |a Algorithms illuminated |c Tim Roughgarden |
250 | |a (Omnibus edition) | ||
264 | 1 | |a New York, NY |b Soundlikeyourself Publishing |c [2022] | |
264 | 4 | |c © 2022 | |
300 | |a xvii, 671 Seiten |b Illustrationen, Diagramme | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Algorithmus |0 (DE-588)4001183-5 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Algorithmus |0 (DE-588)4001183-5 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m HEBIS Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=034070299&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
Datensatz im Suchindex
_version_ | 1805080266774937600 |
---|---|
adam_text |
Contents
Preface
I
The Basics
Introduction
1 1 Why Study Algorithms?
1 2 Integer Multiplication
1 3 Karatsuba Multiplication
1 4 MergeSort: The Algorithm
1 5 MergeSort: The Analysis
1 6 Guiding Principles for the Analysis of Algorithms
Problems
Asymptotic Notation
2 1 The Gist
2 2 Big-O Notation
2 3 Two Basic Examples
2 4 Big-Omega and Big-Theta Notation
2 5 Additional Examples
Problems
Divide-and-Conquer Algorithms
3 1 The Divide-and-Conquer Paradigm
3 2 Counting Inversions in O(n log n) Time
3 3 Strassen’s Matrix Multiplication Algorithm
*34 An O(nilogn)-Time Algorithm for the Closest Pair
Problems
The Master Method
4 1 Integer Multiplication Revisited
4 2 Formal Statement
4 3 Six Examples
*4 4 Proof of the Master Method
Problems
vii
xii
fe
Contents
hi
| Mi 000 nm
5 QuickSort 90
i 5,1 Overview vot Element 93
;52 Partitioning Around a Pivot Elem 98
5 3 The Importance of Good Pivots | 101
54 Randomized QuickSort 104
*5 5 Analysis of Randomized QuickSort 112
*56 Sorting Requires Q(n log n) Comparisons 116
Problems
6 Linear-Time Selection 120
6 1 The RSelect Algorithm 125
*6 2 Analysis of RSelect 129
*6 3 The DSelect Algorithm 132
*6 4 Analysis of DSelect 138
Problems
Il Graph Algorithms and Data Structures
7 Graphs: The Basics 149
7 4 Some Vocabulary 143
72A Few Applications
7 3 Measuring the Size of a Graph 144
7 4 Representing a Graph 146
Problems 151
8 Graph Search and Its Applications 153
8 1 Overview 153
8 2 Breadth-First Search and Shortest Paths 159
8 3 Computing Connected Components 166
8 4 Depth-First Search 170
8 5 Topological Sort 174
*8 6 Computing Strongly Connected Components 181
8 7 The Structure of the Web 190
| Problems 193
# 9 Dijkstra’s Shortest-Path Algorithm 198
9 1 The Single-Source Shortest Path Problem 198
9 2 Dijkstra’s Algorithm 02
2 hy Is Dijkstra’s Algorithm Correct? 204
: mpiementation and Running Tj
Problems amp; lume 209
10 The Heap Data Structure
10 1 Data Structures: An Overview 214
10 2 Supported Operations 214
10 3 Applications 216
Contents
10 4 Speeding Up Dijkstra’s Algorithm
*10 5 Implementation Details
Problems
11 Search Trees
11 1 Sorted Arrays
11 2 Search Trees: Supported Operations
*11 3 Implementation Details
*11 4 Balanced Search Trees
Problems
12 Hash Tables and Bloom Filters
12 1 Supported Operations
12 2 Applications
*12 3 Implementation: High-Level Ideas
*12 4 Further Implementation Details
12 5 Bloom Filters: The Basics
*12 6 Bloom Filters: Heuristic Analysis
Problems
III Greedy Algorithms and Dynamic Programming
13 Introduction to Greedy Algorithms
13 1 The Greedy Algorithm Design Paradigm
13 2 A Scheduling Problem
13 3 Developing a Greedy Algorithm
13 4 Proof of Correctness
Problems
14 Huffman Codes
14 1 Codes
14 2 Codes as Trees
14 3 Huffman’s Greedy Algorithm
*14 4 Proof of Correctness
Problems
15 Minimum Spanning Trees
15 1 Problem Definition
15 2 Prim’s Algorithm
*15 3 Speeding Up Prim’s Algorithm via Heaps
*15 4 Prim’s Algorithm: Proof of Correctness
15 5 Kruskal’s Algorithm
*15 6 Speeding Up Kruskal’s Algorithm via Union-Find
*15 7 Kruskal’s Algorithm: Proof of Correctness
15 8 Application: Single-Link Clustering
Problems
ix
Introduction to Dynamic Programming
16 1 The Weighted Independent Set Problem
16 2 A Linear-Time Algorithm for WIS in Paths
16 3 A Reconstruction Algorithm
16 4 The Principles of Dynamic Programming
16 5 The Knapsack Problem
Problems
Advanced Dynamic Programming
17 1 Sequence Alignment
*17 2 Optimal Binary Search Trees
Problems
Shortest Paths Revisited
18 1 Shortest Paths with Negative Edge Lengths
18 2 The Bellman-Ford Algorithm
18 3 The All-Pairs Shortest Path Problem
18 4 The Floyd-Warshall Algorithm
Problems
IV Algorithms for NP-Hard Problems
What Is NP-Hardness?
19 1 MST vs TSP: An Algorithmic Mystery
19 2 Possible Levels of Expertise
19 3 Easy and Hard Problems
19 4 Algorithmic Strategies for NP-Hard Problems
19 5 Proving NP-Hardness: A Simple Recipe
19 6 Rookie Mistakes and Acceptable Inaccuracies
Problems
Compromising on Correctness: Efficient Inexact Algorithms
20 1 Makespan Minimization
20 2 Maximum Coverage
*20 3 Influence Maximization
20 4 The 2-OPT Heuristic Algorithm for the TSP
20 5 Principles of Local Search
Problems
Compromising on Speed: Exact Inefficient Algorithms
21 1 The Bellman-Held-Karp Algorithm for the TSP
*21 2 Finding Long Paths by Color Coding
21 3 Problem-Specific Algorithms vs Magic Boxes
21 4 Mixed Integer Programming Solvers
21 5 Satisfiability Solvers
Problems
Contents
38]
41]
Contents
22 Proving Problems NP-Hard
22 1 Reductions Revisited
22 2 3-SAT and the Cook-Levin Theorem
22 3 The Big Picture
22 4 A Template for Reductions
22 5 Independent Set Is NP-Hard
*22 6 Directed Hamiltonian Path Is NP-Hard
22 7 The TSP Is NP-Hard
22 8 Subset Sum Is NP-Hard
Problems
23 P,NP, and All That
*23 ] Amassing Evidence of Intractability
*23 2 Decision, Search, and Optimization
*23 3 NP: Problems with Easily Recognized Solutions
*23 4 The P# NP Conjecture
*23 5 The Exponential Time Hypothesis
*23 6 NP-Completeness
Problems
Case Study: The FCC Incentive Auction
24 1 Repurposing Wireless Spectrum
24 2 Greedy Heuristics for Buying Back Licenses
24 3 Feasibility Checking
24 4 Implementation as a Descending Clock Auction
24 5 The Final Outcome
Problems
Quick Review of Proofs By Induction
A]A Template for Proofs by Induction
A 2 Example: A Closed-Form Formula
A 3 Example: The Size of a Complete Binary Tree
Quick Review of Discrete Probability
B 1 Sample Spaces
B 2 Events
B 3 Random Variables
B 4 Expectation
B 5 Linearity of Expectation
B 6 Example: Load Balancing
Epilogue: A Field Guide to Algorithm Design
Hints and Solutions
Index
xi |
adam_txt |
Contents
Preface
I
The Basics
Introduction
1 1 Why Study Algorithms?
1 2 Integer Multiplication
1 3 Karatsuba Multiplication
1 4 MergeSort: The Algorithm
1 5 MergeSort: The Analysis
1 6 Guiding Principles for the Analysis of Algorithms
Problems
Asymptotic Notation
2 1 The Gist
2 2 Big-O Notation
2 3 Two Basic Examples
2 4 Big-Omega and Big-Theta Notation
2 5 Additional Examples
Problems
Divide-and-Conquer Algorithms
3 1 The Divide-and-Conquer Paradigm
3 2 Counting Inversions in O(n log n) Time
3 3 Strassen’s Matrix Multiplication Algorithm
*34 An O(nilogn)-Time Algorithm for the Closest Pair
Problems
The Master Method
4 1 Integer Multiplication Revisited
4 2 Formal Statement
4 3 Six Examples
*4 4 Proof of the Master Method
Problems
vii
xii
fe
Contents
hi
| Mi 000 nm
5 QuickSort 90
i 5,1 Overview vot Element 93
;52 Partitioning Around a Pivot Elem 98
5 3 The Importance of Good Pivots | 101
54 Randomized QuickSort 104
*5 5 Analysis of Randomized QuickSort 112
*56 Sorting Requires Q(n log n) Comparisons 116
Problems
6 Linear-Time Selection 120
6 1 The RSelect Algorithm 125
*6 2 Analysis of RSelect 129
*6 3 The DSelect Algorithm 132
*6 4 Analysis of DSelect 138
Problems
Il Graph Algorithms and Data Structures
7 Graphs: The Basics 149
7 4 Some Vocabulary 143
72A Few Applications
7 3 Measuring the Size of a Graph 144
7 4 Representing a Graph 146
Problems 151
8 Graph Search and Its Applications 153
8 1 Overview 153
8 2 Breadth-First Search and Shortest Paths 159
8 3 Computing Connected Components 166
8 4 Depth-First Search 170
8 5 Topological Sort 174
*8 6 Computing Strongly Connected Components 181
8 7 The Structure of the Web 190
| Problems 193
# 9 Dijkstra’s Shortest-Path Algorithm 198
9 1 The Single-Source Shortest Path Problem 198
9 2 Dijkstra’s Algorithm 02
2 hy Is Dijkstra’s Algorithm Correct? 204
: mpiementation and Running Tj
Problems amp; lume 209
10 The Heap Data Structure
10 1 Data Structures: An Overview 214
10 2 Supported Operations 214
10 3 Applications 216
Contents
10 4 Speeding Up Dijkstra’s Algorithm
*10 5 Implementation Details
Problems
11 Search Trees
11 1 Sorted Arrays
11 2 Search Trees: Supported Operations
*11 3 Implementation Details
*11 4 Balanced Search Trees
Problems
12 Hash Tables and Bloom Filters
12 1 Supported Operations
12 2 Applications
*12 3 Implementation: High-Level Ideas
*12 4 Further Implementation Details
12 5 Bloom Filters: The Basics
*12 6 Bloom Filters: Heuristic Analysis
Problems
III Greedy Algorithms and Dynamic Programming
13 Introduction to Greedy Algorithms
13 1 The Greedy Algorithm Design Paradigm
13 2 A Scheduling Problem
13 3 Developing a Greedy Algorithm
13 4 Proof of Correctness
Problems
14 Huffman Codes
14 1 Codes
14 2 Codes as Trees
14 3 Huffman’s Greedy Algorithm
*14 4 Proof of Correctness
Problems
15 Minimum Spanning Trees
15 1 Problem Definition
15 2 Prim’s Algorithm
*15 3 Speeding Up Prim’s Algorithm via Heaps
*15 4 Prim’s Algorithm: Proof of Correctness
15 5 Kruskal’s Algorithm
*15 6 Speeding Up Kruskal’s Algorithm via Union-Find
*15 7 Kruskal’s Algorithm: Proof of Correctness
15 8 Application: Single-Link Clustering
Problems
ix
Introduction to Dynamic Programming
16 1 The Weighted Independent Set Problem
16 2 A Linear-Time Algorithm for WIS in Paths
16 3 A Reconstruction Algorithm
16 4 The Principles of Dynamic Programming
16 5 The Knapsack Problem
Problems
Advanced Dynamic Programming
17 1 Sequence Alignment
*17 2 Optimal Binary Search Trees
Problems
Shortest Paths Revisited
18 1 Shortest Paths with Negative Edge Lengths
18 2 The Bellman-Ford Algorithm
18 3 The All-Pairs Shortest Path Problem
18 4 The Floyd-Warshall Algorithm
Problems
IV Algorithms for NP-Hard Problems
What Is NP-Hardness?
19 1 MST vs TSP: An Algorithmic Mystery
19 2 Possible Levels of Expertise
19 3 Easy and Hard Problems
19 4 Algorithmic Strategies for NP-Hard Problems
19 5 Proving NP-Hardness: A Simple Recipe
19 6 Rookie Mistakes and Acceptable Inaccuracies
Problems
Compromising on Correctness: Efficient Inexact Algorithms
20 1 Makespan Minimization
20 2 Maximum Coverage
*20 3 Influence Maximization
20 4 The 2-OPT Heuristic Algorithm for the TSP
20 5 Principles of Local Search
Problems
Compromising on Speed: Exact Inefficient Algorithms
21 1 The Bellman-Held-Karp Algorithm for the TSP
*21 2 Finding Long Paths by Color Coding
21 3 Problem-Specific Algorithms vs Magic Boxes
21 4 Mixed Integer Programming Solvers
21 5 Satisfiability Solvers
Problems
Contents
38]
41]
Contents
22 Proving Problems NP-Hard
22 1 Reductions Revisited
22 2 3-SAT and the Cook-Levin Theorem
22 3 The Big Picture
22 4 A Template for Reductions
22 5 Independent Set Is NP-Hard
*22 6 Directed Hamiltonian Path Is NP-Hard
22 7 The TSP Is NP-Hard
22 8 Subset Sum Is NP-Hard
Problems
23 P,NP, and All That
*23 ] Amassing Evidence of Intractability
*23 2 Decision, Search, and Optimization
*23 3 NP: Problems with Easily Recognized Solutions
*23 4 The P# NP Conjecture
*23 5 The Exponential Time Hypothesis
*23 6 NP-Completeness
Problems
Case Study: The FCC Incentive Auction
24 1 Repurposing Wireless Spectrum
24 2 Greedy Heuristics for Buying Back Licenses
24 3 Feasibility Checking
24 4 Implementation as a Descending Clock Auction
24 5 The Final Outcome
Problems
Quick Review of Proofs By Induction
A]A Template for Proofs by Induction
A 2 Example: A Closed-Form Formula
A 3 Example: The Size of a Complete Binary Tree
Quick Review of Discrete Probability
B 1 Sample Spaces
B 2 Events
B 3 Random Variables
B 4 Expectation
B 5 Linearity of Expectation
B 6 Example: Load Balancing
Epilogue: A Field Guide to Algorithm Design
Hints and Solutions
Index
xi |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Roughgarden, Tim 1975- |
author_GND | (DE-588)1117167275 |
author_facet | Roughgarden, Tim 1975- |
author_role | aut |
author_sort | Roughgarden, Tim 1975- |
author_variant | t r tr |
building | Verbundindex |
bvnumber | BV048804226 |
classification_rvk | ST 110 ST 134 |
ctrlnum | (OCoLC)1342828743 (DE-599)KXP1820835227 |
discipline | Informatik |
discipline_str_mv | Informatik |
edition | (Omnibus edition) |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV048804226</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20240701</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">230207s2022 xxua||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780999282984</subfield><subfield code="c">hardback</subfield><subfield code="9">978-0-9992829-8-4</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)1342828743</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)KXP1820835227</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rda</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">xxu</subfield><subfield code="c">XD-US</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-20</subfield><subfield code="a">DE-898</subfield><subfield code="a">DE-706</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-188</subfield><subfield code="a">DE-B768</subfield><subfield code="a">DE-11</subfield><subfield code="a">DE-355</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 110</subfield><subfield code="0">(DE-625)143583:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 134</subfield><subfield code="0">(DE-625)143590:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">54.51</subfield><subfield code="2">bkl</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">54.10</subfield><subfield code="2">bkl</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Roughgarden, Tim</subfield><subfield code="d">1975-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)1117167275</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Algorithms illuminated</subfield><subfield code="c">Tim Roughgarden</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">(Omnibus edition)</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">New York, NY</subfield><subfield code="b">Soundlikeyourself Publishing</subfield><subfield code="c">[2022]</subfield></datafield><datafield tag="264" ind1=" " ind2="4"><subfield code="c">© 2022</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">xvii, 671 Seiten</subfield><subfield code="b">Illustrationen, Diagramme</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Algorithmus</subfield><subfield code="0">(DE-588)4001183-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Algorithmus</subfield><subfield code="0">(DE-588)4001183-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HEBIS Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=034070299&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield></record></collection> |
id | DE-604.BV048804226 |
illustrated | Illustrated |
index_date | 2024-07-03T21:28:43Z |
indexdate | 2024-07-20T06:58:09Z |
institution | BVB |
isbn | 9780999282984 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-034070299 |
oclc_num | 1342828743 |
open_access_boolean | |
owner | DE-20 DE-898 DE-BY-UBR DE-706 DE-523 DE-573 DE-188 DE-B768 DE-11 DE-355 DE-BY-UBR |
owner_facet | DE-20 DE-898 DE-BY-UBR DE-706 DE-523 DE-573 DE-188 DE-B768 DE-11 DE-355 DE-BY-UBR |
physical | xvii, 671 Seiten Illustrationen, Diagramme |
publishDate | 2022 |
publishDateSearch | 2022 |
publishDateSort | 2022 |
publisher | Soundlikeyourself Publishing |
record_format | marc |
spelling | Roughgarden, Tim 1975- Verfasser (DE-588)1117167275 aut Algorithms illuminated Tim Roughgarden (Omnibus edition) New York, NY Soundlikeyourself Publishing [2022] © 2022 xvii, 671 Seiten Illustrationen, Diagramme txt rdacontent n rdamedia nc rdacarrier Algorithmus (DE-588)4001183-5 gnd rswk-swf Algorithmus (DE-588)4001183-5 s DE-604 HEBIS Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=034070299&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Roughgarden, Tim 1975- Algorithms illuminated Algorithmus (DE-588)4001183-5 gnd |
subject_GND | (DE-588)4001183-5 |
title | Algorithms illuminated |
title_auth | Algorithms illuminated |
title_exact_search | Algorithms illuminated |
title_exact_search_txtP | Algorithms illuminated |
title_full | Algorithms illuminated Tim Roughgarden |
title_fullStr | Algorithms illuminated Tim Roughgarden |
title_full_unstemmed | Algorithms illuminated Tim Roughgarden |
title_short | Algorithms illuminated |
title_sort | algorithms illuminated |
topic | Algorithmus (DE-588)4001183-5 gnd |
topic_facet | Algorithmus |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=034070299&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT roughgardentim algorithmsilluminated |