Mastering Algorithms with Perl

The book 'Mastering Algorithms with Perl' will help you with inventing those general and reusable methods for solving an entire class of problems called "algorithms".

Algorithms are, in other words, recipes in mathematical format, and this book will help you invent and master them by using Perl.

For instance, the binary search algorithm is discussed in chapter 5 of the book (which is all about searches), and it's provably the best algorithm for tasks like finding a particular word in a dictionary.

By using the Perl language to represent each word as a scalar, store each list of words in a Perl array (an ordered list of scalars), and using the Perl "hash" to "map" one set of scalars--the "keys"--to other scalars--the "values"--you can use Perl to create a highly effective searchable online dictionary.

'Mastering Algorithms with Perl' also presents a wide variety of data structures and show you how to choose the appropriate one to better complete your task. Perl, in fact, has built-in data structures, and these are immensely important to the mastering of effective algorithms. But the computer language also provides convenient, powerful ways to develop new structures for addressing the unique needs of a task at hand. In chapter 2, you see how this computer language lets you write subroutines that enhance how you process data while at once enabling you to create new structures that provide you new ways to store you data.

This then flows in chapter 3 of 'Mastering Algorithms with Perl', where you'll learn to make use of Perl's basic building blocks (mentioned above) to create the highly familiar and proven lists, heaps, and binary trees of computer science – some of the most important advanced data structures described in the book. You'll later go on to also learn of B-trees in chapter 5, Perl sets in chapter 6, and Perl graphs in chapter 8 (which is all about one of the oldest computational tools known to mathematics and computer science--yes, the graph or network).

Chapter 4 brings you into Perl's highly efficient method of sorting (comparing and rearranging a collection of items) using Perl's own "sort" function and primary, secondary, and tertiary keys or fields to be used in conjunction with records.

Moving on to chapter 6 in 'Mastering Algorithms with Perl', you'll learn manipulating sets with Perl, including knowledge of members or elements of unique and unordered sets. Sets of sets, power sets, and multivalued sets are also gone over, giving you a complete knowledge of how to emulate sets with Perl's unique hashes or bit vectors.

Chapter 7 brings you to the Perl-study of those representations for data known as matrices. A matrix is a rectangular table of elements (which may be numbers) and it is used as a potent tool for solving highly complex problems, but complex problems that lead to many practical applications--which algorithms use as part of their recipes.

Chapter 9 talks about the incredible facility Perl possesses for string matching (the "e" in Perl stands for "extraction"). Besides the ever-more important "fuzzy matching" that Perl enables, you'll also learn about using Perl for: phonetic matching, parsing, lexing, stemming and inflection.

Chapter 10 gets into geometric algorithms including: web image maps, arranging windows, cartography and simulations. The book provide only the necessary building blocks and let the user to improve these techniques.

Chapter 11 is on number systems and you'll all about how the Fibonacci sequence, Bernoulli numbers, and the Riemann zeta function enable Perl users to deal with computers' imprecision or manipulate very large and small numbers (and you'll learn a lot more, too).

This leads in chapter 12 and number theory -- which has become far more than mere abstract theory and has become invaluable to cryptography in computer science. And in fact once you turn the page to chapter 13, you'll learn how you can use Perl-enabled algorithms to ensure that only authorized individuals can do certain activities that are essential and ubiquitous to our modern computerized world--such as doing their banking online. Using cryptography for logging on to a computer, determining whether or not a file's contents have changed, sending a secret message that intermediate parties can't read, and knowing the legal issues pertaining to writing, distributing, and using cryptography are all covered.

In the last three chapters of 'Mastering Algorithms with Perl', you'll become a Perl monk master of probability, statistics, and numerical analysis and be able to invent algorithms for analyzing their relative matters in the real world, such as with stock market prediction.

The topics presented in the book are accompanied by very deeply explanations and a lot of examples meant to clarify the topics better.

You can see large samples of the books’ chapters following the link:

Mastering Algorithms with Perl

Related links:

Learning Perl Fourth Edition

Mastering Perl

Teach Yourself Perl

Perl Best Practices

Perl Cookbook

Beginning Perl for Bioinformatics

Mastering Perl for Bioinformatics

Mastering Regular Expressions, Third Edition

Perl Tk Tutorial

return to PerlBooks

Would you like to create your own website like this one?
Hit the Alarm Clock!

Site Build It!