Foundations of algorithms:
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Burlington, Mass.
Jones & Bartlett
2015
|
Ausgabe: | 5. ed. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XVII, 676 S. Ill., graph. Darst. |
ISBN: | 9781284049190 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV042551817 | ||
003 | DE-604 | ||
005 | 00000000000000.0 | ||
007 | t | ||
008 | 150511s2015 ad|| |||| 00||| eng d | ||
020 | |a 9781284049190 |9 978-1-284-04919-0 | ||
035 | |a (OCoLC)910302716 | ||
035 | |a (DE-599)BVBBV042551817 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-1050 | ||
050 | 0 | |a QA9.58 | |
084 | |a ST 134 |0 (DE-625)143590: |2 rvk | ||
100 | 1 | |a Neapolitan, Richard E. |e Verfasser |0 (DE-588)141964383 |4 aut | |
245 | 1 | 0 | |a Foundations of algorithms |c Richard E. Neapolitan |
250 | |a 5. ed. | ||
264 | 1 | |a Burlington, Mass. |b Jones & Bartlett |c 2015 | |
300 | |a XVII, 676 S. |b Ill., graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 7 | |a Algoritmen |2 gtt | |
650 | 4 | |a Algorithms | |
650 | 4 | |a Computational complexity | |
650 | 4 | |a Constructive mathematics | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=027985694&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-027985694 |
Datensatz im Suchindex
_version_ | 1804153321107226624 |
---|---|
adam_text | Titel: Foundations of algorithms
Autor: Neapolitan, Richard E
Jahr: 2015
Preface v
About the Author xvii
1 Algorithms: Efficiency, Analysis, and Order 1
1.1 Algorithms........................................................2
1.2 The Importance of Developing Efficient Algorithms..........9
1.2.1 Sequential Search Versus Binary Search................9
1.2.2 The Fibonacci Sequence..................................12
1.3 Analysis of Algorithms..........................................17
1.3.1 Complexity Analysis......................................17
1.3.2 Applying the Theory..................25
1.3.3 Analysis of Correctness.................26
1.4 Order...............................26
1.4.1 An Intuitive Introduction to Order ..........27
1.4.2 A Rigorous Introduction to Order...........28
1.4.3 Using a Limit to Determine Order...........41
1.5 Outline of This Book......................43
Exercises.............................44
2 Divide-and-Conquer 51
2.1 Binary Search..........................52
2.2 Mergesort ............................57
2.3 The Divide-and-Conquer Approach..............64
2.4 Quicksort (Partition Exchange Sort)..............64
2.5 Strassen s Matrix Multiplication Algorithm..........71
2.6 Arithmetic with Large Integers.................76
2.6.1 Representation of Large Integers: Addition and
Other Linear-Time Operations.........77
2.6.2 Multiplication of Large Integers............77
2.7 Determining Thresholds.....................83
2.8 When Not to Use Divide-and-Conquer ............88
Exercises.............................88
nr
3 Dynamic Programming
3.1 The Binomial Coefficient.....................
3.2 Floyd s Algorithm for Shortest Paths.............100
3.3 Dynamic Programming and Optimization Problems.....109
3.4 Chained Matrix Multiplication.................111
3.5 Optimal Binary Search Trees..................121
3.6 The Traveling Salesperson Problem..............131
3.7 Sequence Alignment.......................138
Exercises.............................111
4 The Greedy Approach 151
4.1 Minimum Spanning Trees....................155
4.1.1 Prim s Algorithm....................158
4.1.2 Kruskal s Algorithm...................164
4.1.3 Comparing Prim s Algorithm with Kruskal s
Algorithm ..:..................168
4.1.4 Final Discussion.....................169
4.2 Dijkstra s Algorithm for Single-Source Shortest Paths .... 169
4.3 Scheduling............................173
4.3.1 Minimizing Total Time in the System.........173
4.3.2 Scheduling with Deadlines ...............176
4.4 Huffman Code..........................183
4.4.1 Prefix Codes.......................184
4.4.2 Huffman s Algorithm..................185
4.5 The Greedy Approach versus Dynamic Programming:
The Knapsack Problem...................189
4.5.1 A Greedy Approach to the 0-1 Knapsack Problem . . 190
4.5.2 A Greedy Approach to the Fractional Knapsack
Problem......................191
4.5.3 A Dynamic Programming Approach to the 0-1
Knapsack Problem................192
4.5.4 A Refinement of the Dynamic Programming
Algorithm for the 0-1 Knapsack Problem .... 192
Exercises.............................igg
5 Backtracking 203
5.1 The Backtracking Technique..................204
5.2 The n-Queens Problem.....................211
5.3 Using a Monte Carlo Algorithm to Estimate the
Efficiency of a Backtracking Algorithm...........216
5.4 The Sum-of-Subsets Problem..................220
5.5 Graph Coloring........................ 225
5.6 The Hamiltonian Circuits Problem ..............230
5.7 The 0-1 Knapsack Problem...................234
5.7.1 A Backtracking Algorithm for the 0-1 Knapsack
Problem........................234
5.7.2 Comparing the Dynamic Programming Algorithm and
the Backtracking Algorithm for the 0-1 Knapsack
Problem........................244
Exercises.............................244
6 Branch-and-Bound 249
6.1 Illustrating Branch-and-Bound with the 0-1 Knapsack
Problem............................251
6.1.1 Breadth-First Search with Branch-and-Bound
Pruning ........................251
6.1.2 Best-First Search with Branch-and-Bound Pruning . 257
6.2 The Traveling Salesperson Problem..............262
6.3 Abductive Inference (Diagnosis)................271
Exercises.............................281
7 Introduction to Computational Complexity:
The Sorting Problem 285
7.1 Computational Complexity...................285
7.2 Insertion Sort and Selection Sort................288
7.3 Lower Bounds for Algorithms that Remove at Most One
Inversion per Comparison..................293
7.4 Mergesort Revisited.......................296
7.5 Quicksort Revisited.......................302
7.6 Heapsort.............................304
7.6.1 Heaps and Basic Heap Routines............304
7.6.2 An Implementation of Heapsort............308
7.7 Comparison of Mergesort, Quicksort, and Heapsort.....315
7.8 Lower Bounds for Sorting Only by Comparison of Keys . . . 316
7.8.1 Decision Trees for Sorting Algorithms.........316
7.8.2 Lower Bounds for Worst-Case Behavior........319
7.8.3 Lower Bounds for Average-Case Behavior.......321
7.9 Sorting by Distribution (Radix Sort) .............327
Exercises.............................331
8 More Computational Complexity: The Searching
Problem 337
8.1 Lower Bounds for Searching Only by Comparisons of Keys . 338
8.1.1 Lower Bounds for Worst-Case Behavior........340
8.1.2 Lower Bounds for Average-Case Behavior.......342
8.2 Interpolation Search.......................348
8.3 Searching in Trees........................351
8.3.1 Binary Search Trees...................352
8.3.2 B-Trees..........................356
8.4 Hashing.............................358
8.5 The Selection Problem: Introduction to Adversary
Arguments .........................362
8.5.1 Finding the Largest Key...............363
8.5.2 Finding Both the Smallest and Largest Keys . . . .264
8.5.3 Finding the Second-Largest Key...........372
8.5.4 Finding the fcth-Smallest Key ............376
8.5.5 A Probabilistic Algorithm for the Selection Problem
Exercises............................386
9 Computational Complexity and Intractability:
An Introduction to the Theory of NP
9.1 Intractability..........................395
9.2 Input Size Revisited......................396
9.3 The Three General Problem Categories...........398
9.3.1 Problems for Which Polynomial-Time Algorithms
Have Been Found...................402
9.3.2 Problems That Have Been Proven to Be Intractable . 402
9.3.3 Problems That Have Not Been Proven to Be Intractable
but for Which Polynomial-Time Algorithms Have
Never Been Found...................403
9.4 The Theory of NP........................404
9.4.1 The Sets P and NP...................406
9.4.2 AP-Complete Problems.................411
9.4.3 IVP-Hard, NP-Easy, and ./VP-Equivalent Problems . . 423
9.5 Handling AP-Hard Problems..................428
9.5.1 An Approximation Algorithm for the Traveling
Salesperson Problem.................428
9.5.2 An Approximation Algorithm for the Bin-Packing
Problem........................433
Exercises.............................438
10 Genetic Algorithms and Genetic Programming
10.1 Genetics Review..................441
10.2 Genetic Algorithms................441
10.2.1 Algorithm .................444
10.2.2 Illustrative Example............444
10.2.3 The Traveling Salesperson Problem . . .448
10.3 Genetic Programming...............459
10.3.1 Illustrative Example............459
10.3.2 Artificial Ant................462
10.3.3 Application to Financial Trading.....464
10.4 Discussion and Further Reading.........468
Exercises..............468
11 Number-Theoretic Algorithms 471
11.1 Number Theory Review.....................472
11.1.1 Composite and Prime Numbers ............472
11.1.2 Greatest Common Divisor ...............473
11.1.3 Prime Factorization...................476
11.1.4 Least Common Multiple ................479
11.2 Computing the Greatest Common Divisor ..........479
11.2.1 Euclid s Algorithm....................480
11.2.2 An Extension to Euclid s Algorithm..........484
11.3 Modular Arithmetic Review..................486
11.3.1 Group Theory......................487
11.3.2 Congruency Modulo n..................488
11.3.3 Subgroups........................495
11.4 Solving Modular Linear Equations...............501
11.5 Computing Modular Powers..................507
11.6 Finding Large Prime Numbers.................510
11.6.1 Searching for a Large Prime..............510
11.6.2 Checking if a Number Is Prime.............512
11.7 The RS A Public-Key Cryptosystem..............530
11.7.1 Public-Key Cryptosystems...............531
11.7.2 The RSA Cryptosystem.................532
Exercises.............................535
12 Introduction to Parallel Algorithms 539
12.1 Parallel Architectures......................542
12.1.1 Control Mechanism...................542
12.1.2 Address-Space Organization..............543
12.1.3 Interconnection Networks................545
12.2 The PRAM Model........................548
12.2.1 Designing Algorithms for the CREW PRAM
Model .........................551
12.2.2 Designing Algorithms for the CRCW PRAM
Model .........................559
Exercises.............................562
Appendix A Review of Necessary Mathematics 565
A.l Notation.............................565
A.2 Functions............................567
A.3 Mathematical Induction....................568
A.4 Theorems and Lemmas ....................575
A.5 Logarithms...........................576
A.5.1 Definition and Properties of Logarithms........577
A.5.2 The Natural Logarithm.................579
A.6 Sets...............................581
A.7 Permutations and Combinations ...............582
A.8 Probability...........................585
A.8.1 Randomness.......................591
A.8.2 The Expected Value...................595
Exercises.............................598
Appendix B Solving Recurrence Equations: With
Applications to Analysis of Recursive Algorithms 603
B.l Solving Recurrences Using Induction.............603
B.2 Solving Recurrences Using the Characteristic Equation . . . 607
B.2.1 Homogeneous Linear Recurrences...........608
B.2.2 Nonhomogeneous Linear Recurrences.........616
B.2.3 Change of Variables (Domain Transformations) . . . 622
B.3 Solving Recurrences by Substitution.............626
B.4 Extending Results for n, a Power of a Positive
Constant b, to n in General.................628
B.5 Proofs of Theorems.......................635
Exercises.............................637
Appendix C Data Structures for Disjoint Sets 643
References 653
Index 659
|
any_adam_object | 1 |
author | Neapolitan, Richard E. |
author_GND | (DE-588)141964383 |
author_facet | Neapolitan, Richard E. |
author_role | aut |
author_sort | Neapolitan, Richard E. |
author_variant | r e n re ren |
building | Verbundindex |
bvnumber | BV042551817 |
callnumber-first | Q - Science |
callnumber-label | QA9 |
callnumber-raw | QA9.58 |
callnumber-search | QA9.58 |
callnumber-sort | QA 19.58 |
callnumber-subject | QA - Mathematics |
classification_rvk | ST 134 |
ctrlnum | (OCoLC)910302716 (DE-599)BVBBV042551817 |
discipline | Informatik |
edition | 5. ed. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01234nam a2200349 c 4500</leader><controlfield tag="001">BV042551817</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">00000000000000.0</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">150511s2015 ad|| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781284049190</subfield><subfield code="9">978-1-284-04919-0</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)910302716</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV042551817</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-1050</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA9.58</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="100" ind1="1" ind2=" "><subfield code="a">Neapolitan, Richard E.</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)141964383</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Foundations of algorithms</subfield><subfield code="c">Richard E. Neapolitan</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">5. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Burlington, Mass.</subfield><subfield code="b">Jones & Bartlett</subfield><subfield code="c">2015</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVII, 676 S.</subfield><subfield code="b">Ill., graph. Darst.</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=" " ind2="7"><subfield code="a">Algoritmen</subfield><subfield code="2">gtt</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Algorithms</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computational complexity</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Constructive mathematics</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ 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=027985694&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-027985694</subfield></datafield></record></collection> |
id | DE-604.BV042551817 |
illustrated | Illustrated |
indexdate | 2024-07-10T01:24:45Z |
institution | BVB |
isbn | 9781284049190 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-027985694 |
oclc_num | 910302716 |
open_access_boolean | |
owner | DE-1050 |
owner_facet | DE-1050 |
physical | XVII, 676 S. Ill., graph. Darst. |
publishDate | 2015 |
publishDateSearch | 2015 |
publishDateSort | 2015 |
publisher | Jones & Bartlett |
record_format | marc |
spelling | Neapolitan, Richard E. Verfasser (DE-588)141964383 aut Foundations of algorithms Richard E. Neapolitan 5. ed. Burlington, Mass. Jones & Bartlett 2015 XVII, 676 S. Ill., graph. Darst. txt rdacontent n rdamedia nc rdacarrier Algoritmen gtt Algorithms Computational complexity Constructive mathematics HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=027985694&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Neapolitan, Richard E. Foundations of algorithms Algoritmen gtt Algorithms Computational complexity Constructive mathematics |
title | Foundations of algorithms |
title_auth | Foundations of algorithms |
title_exact_search | Foundations of algorithms |
title_full | Foundations of algorithms Richard E. Neapolitan |
title_fullStr | Foundations of algorithms Richard E. Neapolitan |
title_full_unstemmed | Foundations of algorithms Richard E. Neapolitan |
title_short | Foundations of algorithms |
title_sort | foundations of algorithms |
topic | Algoritmen gtt Algorithms Computational complexity Constructive mathematics |
topic_facet | Algoritmen Algorithms Computational complexity Constructive mathematics |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=027985694&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT neapolitanricharde foundationsofalgorithms |