Jeff Edmonds (Toronto York University)
How to Think about Algorithms
Jeff Edmonds (Toronto York University)
How to Think about Algorithms
- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
The second edition of this student-friendly textbook now includes over 150 new exercises, key concept summaries and a chapter on machine learning algorithms. Its approachability and clarity make it ideal as both a main course text or as a supplementary book for students who find other books challenging.
Andere Kunden interessierten sich auch für
Jeff Edmonds (Toronto York University)How to Think about Algorithms132,99 €
John D. KelleherFundamentals of Machine Learning for Predictive Data Analytics101,99 €
Mor Harchol-Balter (Pennsylvania Carnegie Mellon University)Introduction to Probability for Computing50,99 €
David Liben-Nowell (Minnesota Carleton College)Connecting Discrete Mathematics and Computer Science56,99 €
Tim Roughgarden (New York Columbia University)Algorithms Illuminated49,99 €
Thomas H. CormenIntroduction to Algorithms124,99 €
Martin ErwigOnce Upon an Algorithm15,99 €-
-
-
The second edition of this student-friendly textbook now includes over 150 new exercises, key concept summaries and a chapter on machine learning algorithms. Its approachability and clarity make it ideal as both a main course text or as a supplementary book for students who find other books challenging.
Produktdetails
- Produktdetails
- Verlag: Cambridge University Press
- 2 Revised edition
- Seitenzahl: 464
- Erscheinungstermin: 7. März 2024
- Englisch
- Abmessung: 244mm x 170mm x 33mm
- Gewicht: 1174g
- ISBN-13: 9781009302135
- ISBN-10: 1009302132
- Artikelnr.: 68135621
- Herstellerkennzeichnung
- Libri GmbH
- Europaallee 1
- 36244 Bad Hersfeld
- gpsr@libri.de
- Verlag: Cambridge University Press
- 2 Revised edition
- Seitenzahl: 464
- Erscheinungstermin: 7. März 2024
- Englisch
- Abmessung: 244mm x 170mm x 33mm
- Gewicht: 1174g
- ISBN-13: 9781009302135
- ISBN-10: 1009302132
- Artikelnr.: 68135621
- Herstellerkennzeichnung
- Libri GmbH
- Europaallee 1
- 36244 Bad Hersfeld
- gpsr@libri.de
Jeff Edmonds is Professor in the Department of Electrical Engineering and Computer Science at York University, Canada.
Preface
Introduction
Part I. Iterative Algorithms and Loop Invariants: 1. Iterative algorithms: measures of progress and loop invariants
2. Examples using more-of-the-input loop invariant
3. Abstract data types
4. Narrowing the search space: binary search
5. Iterative sorting algorithms
6. Euclid's GCD algorithm
7. The loop invariant for lower bounds
8. Key concepts summary: loop invariants and iterative algorithms
9. Additional exercises: Part I
10. Partial solutions to additional exercises: Part I
Part II. Recursion: 11. Abstractions, techniques, and theory
12. Some simple examples of recursive algorithms
13. Recursion on trees
14. Recursive images
15. Parsing with context-free grammars
16. Key concepts summary: recursion
17. Additional exercises: Part II
18. Partial solutions to additional exercises: Part II
Part III. Optimization Problems: 19. Definition of optimization problems
20. Graph search algorithms
21. Network flows and linear programming
22. Greedy algorithms
23. Recursive backtracking
24. Dynamic programming algorithms
25. Examples of dynamic programming
26. Reductions and NP-completeness
27. Randomized algorithms
28. Key concepts summary: greedy algorithms and dynamic programmings
29. Additional exercises: Part III
30. Partial solutions to additional exercises: Part III
Part IV. Additional Topics: 31. Existential and universal quantifiers
32. Time complexity
33. Logarithms and exponentials
34. Asymptotic growth
35. Adding-made-easy approximations
36. Recurrence relations
37. A formal proof of correctness
38. Additional exercises: Part IV
39. Partial solutions to additional exercises: Part IV
Exercise Solutions
Conclusion
Index.
Introduction
Part I. Iterative Algorithms and Loop Invariants: 1. Iterative algorithms: measures of progress and loop invariants
2. Examples using more-of-the-input loop invariant
3. Abstract data types
4. Narrowing the search space: binary search
5. Iterative sorting algorithms
6. Euclid's GCD algorithm
7. The loop invariant for lower bounds
8. Key concepts summary: loop invariants and iterative algorithms
9. Additional exercises: Part I
10. Partial solutions to additional exercises: Part I
Part II. Recursion: 11. Abstractions, techniques, and theory
12. Some simple examples of recursive algorithms
13. Recursion on trees
14. Recursive images
15. Parsing with context-free grammars
16. Key concepts summary: recursion
17. Additional exercises: Part II
18. Partial solutions to additional exercises: Part II
Part III. Optimization Problems: 19. Definition of optimization problems
20. Graph search algorithms
21. Network flows and linear programming
22. Greedy algorithms
23. Recursive backtracking
24. Dynamic programming algorithms
25. Examples of dynamic programming
26. Reductions and NP-completeness
27. Randomized algorithms
28. Key concepts summary: greedy algorithms and dynamic programmings
29. Additional exercises: Part III
30. Partial solutions to additional exercises: Part III
Part IV. Additional Topics: 31. Existential and universal quantifiers
32. Time complexity
33. Logarithms and exponentials
34. Asymptotic growth
35. Adding-made-easy approximations
36. Recurrence relations
37. A formal proof of correctness
38. Additional exercises: Part IV
39. Partial solutions to additional exercises: Part IV
Exercise Solutions
Conclusion
Index.
Preface
Introduction
Part I. Iterative Algorithms and Loop Invariants: 1. Iterative algorithms: measures of progress and loop invariants
2. Examples using more-of-the-input loop invariant
3. Abstract data types
4. Narrowing the search space: binary search
5. Iterative sorting algorithms
6. Euclid's GCD algorithm
7. The loop invariant for lower bounds
8. Key concepts summary: loop invariants and iterative algorithms
9. Additional exercises: Part I
10. Partial solutions to additional exercises: Part I
Part II. Recursion: 11. Abstractions, techniques, and theory
12. Some simple examples of recursive algorithms
13. Recursion on trees
14. Recursive images
15. Parsing with context-free grammars
16. Key concepts summary: recursion
17. Additional exercises: Part II
18. Partial solutions to additional exercises: Part II
Part III. Optimization Problems: 19. Definition of optimization problems
20. Graph search algorithms
21. Network flows and linear programming
22. Greedy algorithms
23. Recursive backtracking
24. Dynamic programming algorithms
25. Examples of dynamic programming
26. Reductions and NP-completeness
27. Randomized algorithms
28. Key concepts summary: greedy algorithms and dynamic programmings
29. Additional exercises: Part III
30. Partial solutions to additional exercises: Part III
Part IV. Additional Topics: 31. Existential and universal quantifiers
32. Time complexity
33. Logarithms and exponentials
34. Asymptotic growth
35. Adding-made-easy approximations
36. Recurrence relations
37. A formal proof of correctness
38. Additional exercises: Part IV
39. Partial solutions to additional exercises: Part IV
Exercise Solutions
Conclusion
Index.
Introduction
Part I. Iterative Algorithms and Loop Invariants: 1. Iterative algorithms: measures of progress and loop invariants
2. Examples using more-of-the-input loop invariant
3. Abstract data types
4. Narrowing the search space: binary search
5. Iterative sorting algorithms
6. Euclid's GCD algorithm
7. The loop invariant for lower bounds
8. Key concepts summary: loop invariants and iterative algorithms
9. Additional exercises: Part I
10. Partial solutions to additional exercises: Part I
Part II. Recursion: 11. Abstractions, techniques, and theory
12. Some simple examples of recursive algorithms
13. Recursion on trees
14. Recursive images
15. Parsing with context-free grammars
16. Key concepts summary: recursion
17. Additional exercises: Part II
18. Partial solutions to additional exercises: Part II
Part III. Optimization Problems: 19. Definition of optimization problems
20. Graph search algorithms
21. Network flows and linear programming
22. Greedy algorithms
23. Recursive backtracking
24. Dynamic programming algorithms
25. Examples of dynamic programming
26. Reductions and NP-completeness
27. Randomized algorithms
28. Key concepts summary: greedy algorithms and dynamic programmings
29. Additional exercises: Part III
30. Partial solutions to additional exercises: Part III
Part IV. Additional Topics: 31. Existential and universal quantifiers
32. Time complexity
33. Logarithms and exponentials
34. Asymptotic growth
35. Adding-made-easy approximations
36. Recurrence relations
37. A formal proof of correctness
38. Additional exercises: Part IV
39. Partial solutions to additional exercises: Part IV
Exercise Solutions
Conclusion
Index.







