Hacker's Delight
Author: Henry S Warren
"This is the first book that promises to tell the deep, dark secrets of computer arithmetic, and it delivers in spades. It contains every trick I knew plus many, many more. A godsend for library developers, compiler writers, and lovers of elegant hacks, it deserves a spot on your shelf right next to Knuth."--Josh Bloch
"When I first saw the title, I figured that the book must be either a cookbook for breaking into computers (unlikely) or some sort of compendium of little programming tricks. It's the latter, but it's thorough, almost encyclopedic, in its coverage." --Guy Steele
These are the timesaving techniques relished by computer hackers--those devoted and persistent code developers who seek elegant and efficient ways to build better software. The truth is that much of the computer programmer's job involves a healthy mix of arithmetic and logic. In Hacker's Delight, veteran programmer Hank Warren shares the tricks he has collected from his considerable experience in the worlds of application and system programming. Most of these techniques are eminently practical, but a few are included just because they are interesting and unexpected. The resulting work is an irresistible collection that will help even the most seasoned programmers better their craft.
Topics covered include:
- A broad collection of useful programming tricks
- Small algorithms for common tasks
- Power-of-2 boundaries and bounds checking
- Rearranging bits and bytes
- Integer division and division by constants
- Some elementary functions on integers
- Gray code
- Hilbert's space-fillingcurve
- And even formulas for prime numbers!
This book is for anyone who wants to create efficient code. Hacker's Delight will help you learn to program at a higher level--well beyond what is generally taught in schools and training courses--and will advance you substantially further than is possible through ordinary self-study alone.
0201914654B06272002
Booknews
A computer scientist deeply embedded in IBM has compiled small programming tricks he has come across over his four decades in the field. Most work only on computers that represent integers in two's- complement form, and are easily adapted to machines with various register sizes, though a 32-bit machine is assumed when the register length is relevant. He gives proofs only when the algorithm is not obvious, and not always then. Annotation c. Book News, Inc., Portland, OR
Table of Contents:
Foreword | ||
Preface | ||
Ch. 1 | Introduction | 1 |
Ch. 2 | Basics | 11 |
Ch. 3 | Power-of-2-Boundaries | 45 |
Ch. 4 | Arithmetic Bounds | 51 |
Ch. 5 | Counting Bits | 65 |
Ch. 6 | Searching Words | 91 |
Ch. 7 | Rearranging Bits and Bytes | 101 |
Ch. 8 | Multiplication | 129 |
Ch. 9 | Integer Division | 137 |
Ch. 10 | Integer Division by Constants | 155 |
Ch. 11 | Some Elementary Functions | 203 |
Ch. 12 | Unusual Bases for Number Systems | 223 |
Ch. 13 | Gray Code | 235 |
Ch. 14 | Hilbert's Curve | 241 |
Ch. 15 | Floating-point | 261 |
Ch. 16 | Formulas for Primes | 271 |
App. A | Arithmetic Tables for a 4-Bit Machine | 285 |
App. B | Newton's Method | 289 |
Bibliography | 291 | |
Index | 297 |
Books about: Best Party Book or Slow Cooker Magic
Data Structures and Algorithms in Java
Author: Michael T Goodrich
Fundamental data structures in a consistent object-oriented framework
Now revised to reflect the innovations of Java 5.0, Goodrich and Tamassia's Fourth Edition of Data Structures and Algorithms in Java continues to offer accessible coverage of fundamental data structures, using a consistent object-oriented framework. The authors provide intuition, description, and analysis of fundamental data structures and algorithms. Numerous illustrations, web-based animations, and simplified mathematical analyses justify important analytical concepts.
Key Features of the Fourth Edition:
* Updates to Java 5.0 include new sections on generics and other Java 5.0 features, and revised code fragments, examples, and case studies to conform to Java 5.0.
* Hundreds of exercises, including many that are new to this edition, promote creativity and help readers learn how to think like programmers and reinforce important concepts.
* New case studies illustrate topics such as web browsers, board games, and encryption.
* A new early chapter covers Arrays, Linked Lists, and Recursion.
* A new final chapter on Memory covers memory management and external memory data structures and algorithms.
* Java code examples are used extensively, with source code provided on the website.
* Online animations and effective in-text art illustrate data structures and algorithms in a clear, visual manner.
Access additional resources on the web wiley.com/college/goodrich):
* Java source code for all examples in the book
* Animations
* Library (net.datastructures) of Java constructs used in the book
* Problems database and search engine
* Student hints toall exercises in the book
* Instructor resources, including solutions to selected exercises
* Lecture slides
Booknews
This text for a freshman-sophomore level (CS2) course introduces data structures and algorithms, including their design, analysis, and implementation. It incorporates the object-oriented design paradigm, using Java as the implementation language. Goodrich (computer science, Johns Hopkins U.) and Tamassia (computer science, Brown U.) explain the use of stacks, queues, deques, vectors, lists, sequences, trees, dictionaries, sorting, sets, selection, text processing, and graphs. Concepts in the text are further explained with illustrations, web- based animations, and simplified mathematical analyses. Readers should be somewhat familiar with a high level programming language. Included in the first edition, but absent from the second edition is material more suitable for a junior-senior level (CS7) course. Annotation c. Book News, Inc., Portland, OR (booknews.com)
No comments:
Post a Comment