Algorithms: A Functional Programming Approach / Edition 1

Algorithms: A Functional Programming Approach / Edition 1

by Fethi Rabhi
     
 

ISBN-10: 0201596040

ISBN-13: 9780201596045

Pub. Date: 07/21/1999

Publisher: Addison-Wesley

The design of algorithms for problem-solving lies at the heart of computer science. Concise yet authoritative, Algorithms: A Functional Programming Approach teaches the skills needed to master this essential subject.
The authors challenge more traditional methods of teaching algorithms by using a functional programming context, with Haskell as the…  See more details below

Overview

The design of algorithms for problem-solving lies at the heart of computer science. Concise yet authoritative, Algorithms: A Functional Programming Approach teaches the skills needed to master this essential subject.
The authors challenge more traditional methods of teaching algorithms by using a functional programming context, with Haskell as the implementation language. This leads to smaller, clearer and more elegant programs which enable the programmer to understand the algorithm itself more quickly and to use that understanding to explore alternative solutions. Placing the emphasis on program development rather than the mathematical properties of algorithms, the book uses a succession of practical programming examples to develop in the reader problem-solving skills which can be easily transferred to other language paradigms. Key features of this innovative text include:

  • Unmatched collection of functional programming algorithms
  • A wealth of practical examples, bringing the algorithms into clear focus
  • End of chapter exercises throughout
  • Source code and selected solutions freely available online
  • Comprehensive index and bibliographical notes
  • Appendices on Haskell implementations and mathematical background
For computer science students taking algorithms and/or functional programming courses, Algorithms: A Functional Programming Approach represents the ideal textbook. It is also an invaluable reference source of functional programs for practitioners.

Read More

Product Details

ISBN-13:
9780201596045
Publisher:
Addison-Wesley
Publication date:
07/21/1999
Edition description:
2ND
Pages:
235
Product dimensions:
6.87(w) x 9.21(h) x 0.55(d)

Table of Contents

1. Introduction.
Algorithms.
Functional Languages.
Bibliographical Notes.

2. Functional Programming in Haskell.
About the Language.
Equations and Functions.
Basic Types and Constructed Types.
Lists.
Higher-order Functional Programming Techniques.
Algebraic Types and Polymorphism.
Arrays.
Type Classes and Class Methods.
Exercises.
Bibliographical Notes.

3. The Efficiency of Functional Programs.
Reduction Order.
Analyzing the Efficiency of Programs.
Program Transformation.
Conclusion.
Exercises.
Bibliographical Notes.

4. Concrete Data Types.
Lists.
Trees.
Arrays.
Exercises.
Bibliographical Notes.

5. Abstract Data Types.
Introduction.
Stacks.
Queues.
Priority Queues.
Sets.
Tables.
Binary Search Trees.
Heaps.
AVL trees.
Exercises.
Bibliographical Notes.

6. Sorting.
Introduction.
Comparison-based Sorting.
Basic Sorting Algorithms.
Tree-based Sorting.
Efficiency of Comparison-based Algorithms.
Representation-based Sorting.
Exercises.
Bibliographical Notes.

7. Graph Algorithms.
Definitions and Terminology.
The Graph ADT.
Depth-first and Breadth-firstSearch.
Topological Sort.
Minimum Spanning Tree.
Depth-first Search Trees and Forests.
Conclusion.
Exercises.
Bibliographical Notes.

8. Top-down Design Techniques.
Divide-and-conquer.
Backtracking Search.
Priority-first Search.
Greedy Algorithms.
Exercises.
Bibliographical Notes.

9. Dynamic Programming.
Introduction.
The Dynamic Programming Higher-order Function.
Chained Matrix Multiplications.
Optimal Binary Search Trees.
All-pairs Shortest Path.
The Travelling Salesperson.
Conclusion.
Exercises.
Bibliographical Notes.

10. Advanced topics.
Process Network.
Monads.
Parallel Algorithms.
Bibliographical Notes.

Bibliography.
A: Haskell Implementations.
B: Mathematical Background.
Notation.
Logarithms.
Summation Formulas.
Solving Recurrence Equations.

Index.

Read More

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >