Beginning Algorithms
商品資訊
相關商品
商品簡介
作者簡介
目次
商品簡介
Beginning Algorithms
A good understanding of algorithms, and the knowledge of when to apply them, is crucial to producing software that not only works correctly, but also performs efficiently. This is the only book to impart all this essential information-from the basics of algorithms, data structures, and performance characteristics to the specific algorithms used in development and programming tasks.
Packed with detailed explanations and instructive examples, the book begins by offering you some fundamental data structures and then goes on to explain various sorting algorithms. You'll then learn efficient practices for storing and searching by way of hashing, trees, sets, and maps. The authors also share tips on optimization techniques and ways to avoid common performance pitfalls. In the end, you'll be prepared to build the algorithms and data structures most commonly encountered in day-to-day software development.
What you will learn from this book
The basics of algorithms, such as iteration and recursion
Elementary data structures such as lists, stacks, and queues
Basic and advanced sorting algorithms including insertion sort, quicksort, and shell sort
Advanced data structures such as binary trees, ternary trees, and heaps
Algorithms for string searching, string matching, hashing, and computational geometry
How to use test-driven development techniques to ensure your code works as intended
How to dramatically improve the performance of your code with hands-on techniques for profiling and optimization
Who this book is for
This book is for anyone who develops applications, or is just beginning to do so, and is looking to understand algorithms and data structures. An understanding of computer programming is beneficial.
Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.
A good understanding of algorithms, and the knowledge of when to apply them, is crucial to producing software that not only works correctly, but also performs efficiently. This is the only book to impart all this essential information-from the basics of algorithms, data structures, and performance characteristics to the specific algorithms used in development and programming tasks.
Packed with detailed explanations and instructive examples, the book begins by offering you some fundamental data structures and then goes on to explain various sorting algorithms. You'll then learn efficient practices for storing and searching by way of hashing, trees, sets, and maps. The authors also share tips on optimization techniques and ways to avoid common performance pitfalls. In the end, you'll be prepared to build the algorithms and data structures most commonly encountered in day-to-day software development.
What you will learn from this book
The basics of algorithms, such as iteration and recursion
Elementary data structures such as lists, stacks, and queues
Basic and advanced sorting algorithms including insertion sort, quicksort, and shell sort
Advanced data structures such as binary trees, ternary trees, and heaps
Algorithms for string searching, string matching, hashing, and computational geometry
How to use test-driven development techniques to ensure your code works as intended
How to dramatically improve the performance of your code with hands-on techniques for profiling and optimization
Who this book is for
This book is for anyone who develops applications, or is just beginning to do so, and is looking to understand algorithms and data structures. An understanding of computer programming is beneficial.
Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.
作者簡介
Simon Harris started writing animated sprites on a Commodore 64 in primary school. After a break of many years, he taught himself 80x86 and IBM System/370 assembler and started working professionally. Since then he has moved from assembler to C, C++, and, of course, Java. He believes a fundamental understanding and appreciation of algorithms is essential to developing good software; and since starting his own company, RedHill Consulting, he has managed to make a living discussing and demonstrating software development practices and techniques to anyone who will listen.
In his more than 15 years of development experience, James Ross has ranged from building packaged products to large enterprise systems to research into compilers and languages. In recent years, he has become a code quality fanatic and agile methods specialist, particularly with test-driven development. He works as a consultant for ThoughtWorks, the world’s leading agile software development company. He is currently leading the development of a large J2EE project in the insurance industry in Melbourne, Australia. He lives with his wife and family in Melbourne.
In his more than 15 years of development experience, James Ross has ranged from building packaged products to large enterprise systems to research into compilers and languages. In recent years, he has become a code quality fanatic and agile methods specialist, particularly with test-driven development. He works as a consultant for ThoughtWorks, the world’s leading agile software development company. He is currently leading the development of a large J2EE project in the insurance industry in Melbourne, Australia. He lives with his wife and family in Melbourne.
目次
Acknowledgments.
Introduction.
Chapter 1: Getting Started.
Chapter 2: Iteration and Recursion.
Chapter 3: Lists.
Chapter 4: Queues.
Chapter 5: Stacks.
Chapter 6: Basic Sorting.
Chapter 7: Advanced Sorting.
Chapter 8: Priority Queues.
Chapter 9: Binary Searching and Insertion.
Chapter 10: Binary Search Trees.
Chapter 11: Hashing.
Chapter 12: Sets.
Chapter 13: Maps.
Chapter 14: Ternary Search Trees.
Chapter 15: B-Trees.
Chapter 16: String Searching.
Chapter 17: String Matching.
Chapter 18: Computational Geometry.
Chapter 19: Pragmatic Optimization.
Appendix A: Further Reading.
Appendix B: Resources.
Appendix C: Bibliography.
Appendix D: Answers to Exercises.
Index.
Introduction.
Chapter 1: Getting Started.
Chapter 2: Iteration and Recursion.
Chapter 3: Lists.
Chapter 4: Queues.
Chapter 5: Stacks.
Chapter 6: Basic Sorting.
Chapter 7: Advanced Sorting.
Chapter 8: Priority Queues.
Chapter 9: Binary Searching and Insertion.
Chapter 10: Binary Search Trees.
Chapter 11: Hashing.
Chapter 12: Sets.
Chapter 13: Maps.
Chapter 14: Ternary Search Trees.
Chapter 15: B-Trees.
Chapter 16: String Searching.
Chapter 17: String Matching.
Chapter 18: Computational Geometry.
Chapter 19: Pragmatic Optimization.
Appendix A: Further Reading.
Appendix B: Resources.
Appendix C: Bibliography.
Appendix D: Answers to Exercises.
Index.
主題書展
更多
主題書展
更多書展本週66折
您曾經瀏覽過的商品
購物須知
外文書商品之書封,為出版社提供之樣本。實際出貨商品,以出版社所提供之現有版本為主。部份書籍,因出版社供應狀況特殊,匯率將依實際狀況做調整。
無庫存之商品,在您完成訂單程序之後,將以空運的方式為你下單調貨。為了縮短等待的時間,建議您將外文書與其他商品分開下單,以獲得最快的取貨速度,平均調貨時間為1~2個月。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。