FREE SHIPPING BOTH WAYS
ON EVERY ORDER!
LIST PRICE:
$39.99

Sorry, this item is currently unavailable.

Elements of Programming

ISBN: 9780321635372 | 032163537X
Edition: 1st
Format: Hardcover
Publisher: Addison-Wesley Professional
Pub. Date: 6/9/2009

Why Rent from Knetbooks?

Because Knetbooks knows college students. Our rental program is designed to save you time and money. Whether you need a textbook for a semester, quarter or even a summer session, we have an option for you. Simply select a rental period, enter your information and your book will be on its way!

Top 5 reasons to order all your textbooks from Knetbooks:

  • We have the lowest prices on thousands of popular textbooks
  • Free shipping both ways on ALL orders
  • Most orders ship within 48 hours
  • Need your book longer than expected? Extending your rental is simple
  • Our customer support team is always here to help
SummaryTable of ContentsAuthor Biography
"Ask a mechanical, structural, or electrical engineer how far they would get without a heavy reliance on a firm mathematical foundation, and they will tell you, -~not far.' Yet so-called software engineers often practice their art with little or no idea of the mathematical underpinnings of what they are doing. And then we wonder why software is notorious for being delivered late and full of bugs, while other engineers routinely deliver finished bridges, automobiles, electrical appliances, etc. on time and with only minor defects. This book sets... MORE
... MORE
Prefacep. ix
About the Authorsp. xiii
Foundationsp. 1
Categories of Ideas: Entity, Species, Genusp. 1
Valuesp. 2
Objectsp. 4
Proceduresp. 6
Regular Typesp. 6
Regular Proceduresp. 8
Conceptsp. 10
Conclusionsp. 14
Transformations and Their Orbitsp. 15
Transformationsp. 15
Orbitsp. 18
Collision Pointp. 21
Measuring Orbit Sizesp. 27
Actionsp. 28
Conclusionsp. 29
Associative Operationsp. 31
Associativityp. 31
Computing Powersp. 33
Program Transformationsp. 35
Special-Case Proceduresp. 39
Parameterizing Algorithmsp. 42
Linear Recurrencesp. 43
Accumulation Proceduresp. 46
Conclusionsp. 47
Linear Orderingsp. 49
Classification of Relationsp. 49
Total and Weak Orderingsp. 51
Order Selectionp. 52
Natural Total Orderingp. 61
Clusters of Derived Proceduresp. 62
Extending Order-Selection Proceduresp. 63
Conclusionsp. 63
Ordered Algebraic Structuresp. 65
Basic Algebraic Structuresp. 65
Ordered Algebraic Structuresp. 70
Remainderp. 71
Greatest Common Divisorp. 76
Generalizing gcdp. 79
Stein gcdp. 81
Quotientp. 81
Quotient and Remainder for Negative Quantitiesp. 83
Concepts and Their Modelsp. 85
Computer Integer Typesp. 87
Conclusionsp. 88
Iteratorsp. 89
Readabilityp. 89
Iteratorsp. 90
Rangesp. 92
Readable Rangesp. 95
Increasing Rangesp. 103
Forward Iteratorsp. 106
Indexed Iteratorsp. 110
Bidirectional Iteratorsp. 111
Random-Access Iteratorsp. 113
Conclusionsp. 114
Coordinate Structuresp. 115
Bifurcate Coordinatesp. 115
Bidirectional Bifurcate Coordinatesp. 119
Coordinate Structuresp. 124
Isomorphism, Equivalence, and Orderingp. 124
Conclusionsp. 131
Coordinates with Mutable Successorsp. 133
Linked Iteratorsp. 133
Link Rearrangementsp. 134
Applications of Link Rearrangementsp. 140
Linked Bifurcate Coordinatesp. 143
Conclusionsp. 148
Copyingp. 149
Writabilityp. 149
Position-Based Copyingp. 151
Predicate-Based Copyingp. 157
Swapping Rangesp. 164
Conclusionsp. 168
Rearrangementsp. 169
Permutationsp. 169
Rearrangementsp. 172
Reverse Algorithmsp. 174
Rotate Algorithmsp. 178
Algorithm Selectionp. 186
Conclusionsp. 189
Partition and Mergingp. 191
Partitionp. 191
Balanced Reductionp. 198
Mergingp. 202
Conclusionsp. 208
Composite Objectsp. 209
Simple Composite Objectsp. 209
Dynamic Sequencesp. 216
Underlying Typep. 222
Conclusionsp. 225
Afterwordp. 227
Mathematical Notationp. 231
Programming Languagep. 233
Language Definitionp. 233
Macros and Trait Structuresp. 240
Bibliographyp. 243
Indexp. 247
Table of Contents provided by Ingram. All Rights Reserved.

Alexander Stepanov studied mathematics at Moscow State University from 1967 to 1972. He has been programming since 1972: first in the Soviet Union and, after emigrating in 1977, in the United States. He has programmed operating systems, programming tools, compilers, and libraries. His work on foundations of programming has been supported by GE, Brooklyn Polytechnic, AT&T,HP, SGI, and, since 2002, Adobe. In 1995 he received the Dr. Dobb’s Journal Excellence in Programming Award for the design of the C++ Standard Template Library.

Paul McJones
studied engineering mathematics at the University of California, Berkeley, from 1967 to 1971. He has been programming since 1967 in the areas of operating systems, programming environments, transaction processing systems, and enterprise and consumer applications. He has been employed by the University of California, IBM, Xerox, Tandem, DEC, and, since 2003, Adobe. In 1982 he and his coauthors received the ACM Programming Systems and Languages Paper Award for their paper “The Recovery Manager of the System R Database Manager.”



Please wait while this item is added to your cart...