or
Sign in to turn on 1-Click ordering.
 
 
More Buying Choices
33 used & new from Ł29.95

Have one to sell? Sell yours here
 
   
The Art of Computer Programming: Fundamental Algorithms v. 1
 
See larger image
 

The Art of Computer Programming: Fundamental Algorithms v. 1 (Hardcover)

by Donald E. Knuth (Author)
4.7 out of 5 stars  See all reviews (18 customer reviews)
RRP: Ł46.99
Price: Ł35.72 & this item Delivered FREE in the UK with Super Saver Delivery. See details and conditions
You Save: Ł11.27 (24%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In stock.
Dispatched from and sold by Amazon.co.uk. Gift-wrap available.

Only 2 left in stock--order soon (more on the way).

Want guaranteed delivery by Tuesday, November 24? Choose Express delivery at checkout. See Details
21 new from Ł35.29 12 used from Ł29.95
12 Days of Christmas Sale in Books
Get up to 65% off some of our top titles. Shop now

Special Offers and Product Promotions


Frequently Bought Together

The Art of Computer Programming: Fundamental Algorithms v. 1 + The Art of Computer Programming: Sorting and Searching v. 3: The Classic Work Newly Updated and Revised + The Art of Computer Programming: Seminumerical Algorithms v. 2
Price For All Three: Ł99.37

Some of these items are dispatched sooner than the others. Show details


Customers Who Bought This Item Also Bought

The Art of Computer Programming: Sorting and Searching v. 3: The Classic Work Newly Updated and Revised

The Art of Computer Programming: Sorting and Searching v. 3: The Classic Work Newly Updated and Revised

by Donald E. Knuth
5.0 out of 5 stars (4)  Ł30.23
The Art of Computer Programming: Seminumerical Algorithms v. 2

The Art of Computer Programming: Seminumerical Algorithms v. 2

by Donald E. Knuth
5.0 out of 5 stars (2)  Ł33.42
The Art of Computer Programming Volume 1 Fascicle 1 MMIX A RISC Computer for the New Millennium

The Art of Computer Programming Volume 1 Fascicle 1 MMIX A RISC Computer for the New Millennium

by Donald E. Knuth
Ł6.59
Effective C++: 55 Specific Ways to Improve Your Programs and Designs (Addison-Wesley Professional Computing Series)

Effective C++: 55 Specific Ways to Improve Your Programs and Designs (Addison-Wesley Professional Computing Series)

by Scott Meyers
4.8 out of 5 stars (45)  Ł15.96
Learning Perl

Learning Perl

by Randal Schwartz
4.4 out of 5 stars (50)  Ł17.15
Explore similar items

Product details

  • Hardcover: 672 pages
  • Publisher: Addison Wesley; 3 edition (14 Aug 1997)
  • Language English
  • ISBN-10: 0201896834
  • ISBN-13: 978-0201896831
  • Product Dimensions: 23.4 x 17.2 x 3.8 cm
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (18 customer reviews)
  • Amazon.co.uk Sales Rank: 225,976 in Books (See Bestsellers in Books)
  • See Complete Table of Contents

Customers Viewing This Page May Be Interested in These Sponsored Links

  (What is this?)
   Computer Art opens new browser window
www.Corel.com/UK  -  Create the Art You've Always Envisioned with New Painter® 11. 
  
 

Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 


 

Customer Reviews

18 Reviews
5 star:
 (14)
4 star:
 (3)
3 star:    (0)
2 star:
 (1)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.7 out of 5 stars (18 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
10 of 10 people found the following review helpful:
5.0 out of 5 stars No real programmer would be without this book!, 25 Jan 2000
The book is split into two chapters, Basic Concepts and Information Structures.

Chapter 1. Basic Concepts

Chapter 1 starts with a Section which considers what is an isn't an algorithm, and the properties that an algorithm must have. This section closes by offering a mathematical definition of a computational method, "by which the concept of algorithm can be firmly grounded in terms of mathematical set theory". This gives a hint as to what's next! The second Section of Chapter 1 provides a vigorous and intensive overview of the mathematics required for being a practitioner of computer science: induction, powers, logs, sums, products, integer functions, elementary number theory, permutations, factorials, binomial coefficients, harmonic numbers, Fibonacci numbers, generating functions, algorithm analysis and asymptotic representations. Phew! Three thousand years of mathematics are covered in a breathtaking 100-and-a-bit pages and are tested by an almost unbelievable 390 questions, all with answers! The third Section of Chapter 1 covers MIX, an artificial assembler language. My view is that understanding assembler is critical, not optional! To call yourself a computer scientist, or even software engineer, without having at least a working understanding of what your software is actually instructing the processor to do is akin to calling yourself a car mechanic when you don't know how the engine or transmission work! Those few ignorant "reviewers" who gripe about MIX prove that they haven't actually read the book, but wish only to associate their names with someone far more worthy than themselves because as Knuth himself admits: "... MIX is quite obsolete [and will] be replaced ... by a new machine called MMIX ... [which is] a ... reduced instruction set computer" [p124]. He goes on to admit that this will take "a long time". Being able to work with MIX, however, will prepare you to start working with many real-world commercial processors. Finally, a completely artificial construct such as MIX has far more value than creating an artificial high level language as one other reviewer has suggested. Learning the syntax and keywords for any non-trivial high level language, handling control flow, arithmetic, storage, conversion and IO, would take a much larger section than the 40-odd pages that Knuth allocates (even my 1978 edition of Kernigan and Ritchie's "C Programming Language" is over 200 pages!). MIX's application to investigating permutations is also explored in this section. The last Section of Chapter 1 looks at fundamental programming techniques : subroutines, coroutines, interpreters and IO, closing with a short history and bibliography of these techniques.

Chapter 2. Information Structures

Section 1 of Chapter 2 is a short introduction illustrating a linked list, using a hand of cards. Section 2 of Chapter 2 covers: stacks, queues, deques (double-ended queues), sequential allocation ("pushing" items on a stack), linked allocation, circular lists, doubly linked lists, arrays and orthogonal lists (rows and columns). Section 3 of Chapter 2 describes binary and non-binary trees, mathematical properties of trees (free trees, oriented trees and calculation of tree path length), and ends with a description of linked lists and garbage collection. No mention of red-black trees, though. Section 4 of Chapter 2 describes multilinked (nested) structures. Section 5 of Chapter 2 describes dynamic storage allocation and some algorithms for allocation/reallocation. Chapter 2 closes with a history and bibliography of the information structures and algorithms which it describes.

Following the Answers to the Exercises, there are two Appendices, one presenting a table of fundamental constants and numbers, the other offering an index of notations.

Throughout this book, Knuth explains the mathematics extensively, offering not just usage of the algorithms and structures which he describes, but proofs of correctness, investigations of efficiency of speed vs space, references to further material on every page and more than 900 questions (and answers). To paraphrase Gates' quote on the back "You should definitely send me a resumé if you can answer all the questions!"

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
5 of 5 people found the following review helpful:
4.0 out of 5 stars Thorough but difficult, 26 Nov 1999
By A Customer
I thought I knew everything there was to know about linked lists until I read this book. How wrong I was. The same could be said for just about any other topic touched on by Knuth.

The main drawback is that if you want to work through the example questions, then you need to learn MIX and get your hands on a MIX simulator. I've nothing against learning assembler, but this is 1960s assembler, not something "nice" like 68K.

Knuth is working on an updated version, but it'll praobably be years before it's ready. I wouldn't let that put me off buying these books though.

Paul Floyd

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
3 of 3 people found the following review helpful:
5.0 out of 5 stars Excellent book for learning fundamental algorithms well., 15 Aug 1999
By A Customer
I read this book when I was a sophomore in high school and I thought it was excellent. Prior to reading the book, I had wanted for a long time to write a program to evaluate standard mathematical expressions. I had even tried once before, but I didn't know enough about what I was doing to be really successful. Somewhere in the second chapter in a discussion of lists, doubly-linked-lists, and binary trees, a good solution came to me, and I implemented it right after I finished reading the book. It worked very well. This book helped me to accomplish the major goal-project of my computer programming career so far, and I definately think it is worth reading for anyone wanting a really advanced understanding of fundamental algorithms. Now I know to many advanced means total [over]use of fully encapsulated C++ objects, which this book doesn't have, but this book gives an advanced understanding, which is infinitely more valuable than classes. If you understand OOP and you understand this book, you should be able to combine the two just fine. Lastly, I'd like to comment on the use of MIX. I read almost none of the MIX assembly code when I read this book. The little I looked at I looked at because I wanted to see what assembly was like in the 60's. But you can understand everything he's trying to say by his explanations of the algorithms, the assembly code is only for clarification, and you don't have to read it. I also believe that everyone who's been using fully encapsulated classes for their entire programming career should learn an assembly language sometime. Just like this book, it will teach you how to think.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

5.0 out of 5 stars Just try sorting and searching with out this book.
This book has saved my bacon several times through the decades. Once I needed to actually build a database package from scratch instead of using a commercial package... Read more
Published on 17 Jun 2006 by bernie

5.0 out of 5 stars Great book all around.
This book is still a classic, and the reference for anyone who wants to write efficient code. Poor comments bellow come from people who don't actually understand computer... Read more
Published on 6 Jul 1999

5.0 out of 5 stars Extremely helpful to a NOVICE PROGRAMMER
When I read Knuth #1, I was an English Major with a certificate in COBOL programming. Alot of what he said made no sense; after struggling for 3 weeks I began to understand. Read more
Published on 1 Jan 1999

5.0 out of 5 stars Par Excellence...
This series (TAOCP) is for people who have the passion and the vision to chart new areas in Computer Science. Read more
Published on 1 Sep 1998

5.0 out of 5 stars Still a definitive guide to computational algorithms
Computer Science has progressed dramatically over the last few decades. However, advances in fundamental algorithms, and available treatise remains scant, incomplete, or slanted... Read more
Published on 26 Jun 1998

5.0 out of 5 stars Excellent and complete
While weaker minds may abhor the assembly code, this book (and series) contains the most comprehensive discussion of computer topics I've seen. Read more
Published on 27 May 1998

2.0 out of 5 stars Boring
How can someone who supports the notion of Literate Programing write something this dull and write code examples in such an obscure and trivial language? Read more
Published on 27 Jan 1998

5.0 out of 5 stars The bible of computer science just got better!

Knuth has finally updated the three completed volumes ofhis exceptional "The Art of Computer Programming" series,correcting errors and updating the topics to... Read more

Published on 29 Nov 1997

5.0 out of 5 stars Excellent update of a timeless classic - *Required Reading*

Anyone who aspires to be a transcendent programmer must own (and use) Knuth. I've used my 20 year old TAOCP vol. Read more

Published on 10 Nov 1997

4.0 out of 5 stars Technically superior, but poorly written
I believe very strongly in understanding what the computer is doing at the lowest levels, but Knuth's reliance on MIX is unforgivable. Read more
Published on 24 Oct 1997

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

   


Listmania!


Look for similar items by category


Look for similar items by subject


Feedback

Ad

Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.