2 options
Mastering Algorithms with Perl / Jon Orwant, Jarkko Hietaniemi, and John Macdonald.
LIBRA QA76.64 .O78 1999
Available from offsite location
- Format:
- Book
- Author/Creator:
- Orwant, Jon.
- Language:
- English
- Subjects (All):
- Perl (Computer program language).
- Physical Description:
- xvii, 684 pages : illustrations, ; 24 cm
- Edition:
- First edition.
- Place of Publication:
- Sebastopol, CA. : O'Reilly, [1999]
- Summary:
- Whether one is an amateur programmer or knows a wide range of algorithms in other languages, this book will illustrate how to carry out traditional programming tasks in a high-powered, efficient, easy-to-maintain manner with Perl. Topics range in complexity from sorting and searching to statistical algorithms, numerical analysis, and encryption.
- Contents:
- What Is an Algorithm? 1
- Efficiency 8
- Recurrent Themes in Algorithms 20
- 2. Basic Data Structures 24
- Perl's Built-in Data Structures 25
- Build Your Own Data Structure 26
- A Simple Example 27
- Perl Arrays: Many Data Structures in One 37
- 3. Advanced Data Structures 46
- Linked Lists 47
- Circular Linked Lists 60
- Garbage Collection in Perl 62
- Doubly-Linked Lists 65
- Infinite Lists 71
- The Cost of Traversal 72
- Binary Trees 73
- Heaps 91
- Binary Heaps 92
- Janus Heap 99
- The Heaps Module 99
- Future CPAN Modules 101
- 4. Sorting 102
- An Introduction to Sorting 102
- All Sorts of Sorts 119
- Sorting Algorithms Summary 151
- 5. Searching 157
- Hash Search and Other Non-Searches 158
- Lookup Searches 159
- Generative Searches 175
- 6. Sets 203
- Venn Diagrams 204
- Creating Sets 205
- Set Union and Intersection 209
- Set Differences 217
- Counting Set Elements 222
- Set Relations 223
- The Set Modules of CPAN 227
- Sets of Sets 233
- Multivalued Sets 240
- Sets Summary 242
- 7. Matrices 244
- Creating Matrices 246
- Manipulating Individual Elements 246
- Finding the Dimensions of a Matrix 247
- Displaying Matrices 247
- Adding or Multiplying Constants 248
- Transposing a Matrix 254
- Multiplying Matrices 256
- Extracting a Submatrix 259
- Combining Matrices 260
- Inverting a Matrix 261
- Computing the Determinant 262
- Gaussian Elimination 263
- Eigenvalues and Eigenvectors 266
- The Matrix Chain Product 269
- Delving Deeper 272
- 8. Graphs 273
- Vertices and Edges 276
- Derived Graphs 281
- Graph Attributes 286
- Graph Representation in Computers 287
- Graph Traversal 301
- Paths and Bridges 310
- Graph Biology: Trees, Forests, DAGS, Ancestors, and Descendants 312
- Edge and Graph Classes 316
- CPAN Graph Modules 351
- 9. Strings 353
- Perl Builtins 354
- String-Matching Algorithms 357
- Phonetic Algorithms 388
- Stemming and Inflection 389
- Parsing 394
- Compression 411
- 10. Geometric Algorithms 425
- Distance 426
- Area, Perimeter, and Volume 429
- Direction 433
- Intersection 435
- Inclusion 443
- Boundaries 449
- Closest Pair of Points 457
- Geometric Algorithms Summary 464
- CPAN Graphics Modules 464
- 11. Number Systems 469
- Integers and Reals 469
- Strange Systems 480
- Trigonometry 491
- Significant Series 492
- 12. Number Theory 499
- Basic Number Theory 499
- Prime Numbers 504
- Unsolved Problems 522
- 13. Cryptography 526
- Legal Issues 527
- Authorizing People with Passwords 528
- Authorization of Data: Checksums and More 533
- Obscuring Data: Encryption 538
- Hiding Data: Steganography 555
- Winnowing and Chaffing 558
- Encrypted Perl Code 562
- Other Issues 564
- 14. Probability 566
- Random Numbers 567
- Events 569
- Permutations and Combinations 571
- Probability Distributions 574
- Rolling Dice: Uniform Distributions 576
- Loaded Dice and Candy Colors: Nonuniform Discrete Distributions 582
- If the Blue Jays Score Six Runs: Conditional Probability 589
- Flipping Coins Over and Over: Infinite Discrete Distributions 590
- How Much Snow? Continuous Distributions 591
- Many More Distributions 592
- 15. Statistics 599
- Statistical Measures 600
- Significance Tests 608
- Correlation 620
- 16. Numerical Analysis 626
- Computing Derivatives and Integrals 627
- Solving Equations 634
- Interpolation, Extrapolation, and Curve Fitting 642
- B. ASCII Character Set 652.
- Notes:
- Includes bibliographical references and index.
- ISBN:
- 1565923987
- OCLC:
- 42400749
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.