Poetry Madness
 
 

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to PowellsBooks.news
for a chance to win.
Privacy Policy

Visit our stores


    Recently Viewed clear list


    Original Essays | March 10, 2015

    J. C. Hallman: IMG One in the Oven; or, Why You Should Suck It Up and Meet Your Favorite Author



    At first, I was dead set against it. I would not try to meet Nicholson Baker while I was writing a book about Nicholson Baker. I had a good reason... Continue »

    spacer
Qualifying orders ship free.
$182.25
New Trade Paper
Ships in 1 to 3 days
Add to Wishlist
available for shipping or prepaid pickup only
Available for In-store Pickup
in 7 to 12 days
Qty Store Section
1 Remote Warehouse Software Engineering- Programming and Languages

More copies of this ISBN

Data Structures, Algorithms, and Software Principles in C

by

Data Structures, Algorithms, and Software Principles in C Cover

 

Synopses & Reviews

Publisher Comments:

Using C, this book develops the concepts and theory of data structures and algorithm analysis step-by-step. It gradually proceeds from concrete examples to abstract principles. The presentation stresses motivation, intuition, and utility before giving technical details. Recurring themes, such as recursion, levels of abstraction, efficiency, representation, and trade-offs, unify the material completely. Important traditional and contemporary software engineering principles are also covered, including modularity, abstract data types and information hiding, as well as new developments, such as risk-based software life cycle models and object-oriented programming.

0201591189B04062001

Book News Annotation:

Text develops the concepts and theories of data structures and algorithm analysis in a gradual, step-by-step fashion, proceeding from concrete examples to abstract principles. The author discusses many contemporary programming topics in the C language, including risk- based software life cycle models, rapid prototyping, and reusable software components. Also provides an introduction to object oriented programming using C++.
Annotation c. Book News, Inc., Portland, OR (booknews.com)

About the Author

Thomas A. Standish is the chairman of computer science at the University of California, Irvine. In 1990-91, he became the fourth winner of University of California Irvine's Distinguished Faculty Lectureship for Teaching, the campus' highest distinction for teaching excellence. He has also been a co-winner of his department's best-teacher award, chosen by the popular vote of University of California Irvine undergraduate computer science students.

0201591189AB04062001

Table of Contents

(All chapters, except Chapter 1, begin with an Introduction and Motivation.)

1. Preparing for the Journey.

Where Are We Going?

Blending Mathematics, Science, and Engineering.

The Search for Enduring Principles in Computer Science.

Principles of Software System Structure.

Efficiency and Tradeoffs.

Software Engineering Principles.

Our Approach to Mathematics.

Some Notes on Programming Notation.

Preview of Coming Attractions.

2. Linked Data Representations.

What are Pointers? The Basic Intuition.

Pointers in C—The Rudiments.

Pointer Diagramming Notation.

Linear Linked Lists.

Other Linked Data Structures.

3. Introduction to Recursion.

Thinking Recursively.

Common Pitfall—Infinite Regresses.

Quantitative Aspects of Recursive Algorithms.

4. Modularity and Data Abstraction.

The Structure of C Modules.

Priority Queues—An Abstract Data Type.

A Pocket Calculator Interface.

How to Hide Data Representations.

Modularity and Information Hiding in Program Design.

5. Introduction to Software Engineering Concepts.

Top-Down Programming By Stepwise Refinement.

Proving Programs Correct.

Transforming and Optimizing Programs.

Testing Programs.

The Philosophy of Measurement and Tuning.

Software Reuse and Bottom-up Programming.

Program Structuring and Documentation.

6. Introduction to Analysis of Algorithms.

What Do We Use for a Yardstick?

The Intuition Behind O-Notation.

O-Notation—Definition and Manipulation.

Analyzing Simple Algorithms.

What O-Notation Doesn’t Tell You.

7. Linear Data Structures—Stacks and Queues.

Some Background on Stacks.

ADTs for Stacks and Queues.

Using the Stack ADT to Check for Balanced Parentheses.

Using the Stack ADT to Evaluate Postfix Expressions.

Implementing the Stack ADT.

How C Implements Recursive Function Calls Using Stacks.

Implementations of the Queue ADT.

More Queue Applications.

8. Lists, Strings, and Dynamic Memory Allocation.

Lists.

Generalized Lists.

Applications of Generalized Lists.

Strings.

Dynamic Memory Allocation.

9. Trees.

Basic Concepts and Terminology.

Binary Trees.

A Sequential Binary Tree Representation.

An Application—Heaps and Priority Queues.

Traversing Binary Trees.

Binary Search Trees.

AVL Trees and Their Performance.

Two-Three Trees.

Tries.

An Application—Huffman Codes.

10. Graphs.

Basic Concepts and Terminology.

Graph Representations.

Graph Searching.

Topological Ordering.

Shortest Paths.

Task Networks.

Useful Background on Graphs.

11. Hashing and the Table ADT.

The Table ADT.

Introduction to Hashing by Simple Examples.

Collisions, Load Factors, and Clusters.

Algorithms for Hashing by Open Addressing.

Choosing a Hash Function.

Comparison of Searching Methods Using the Table ADT.

12. External Collections of Data.

Characteristics of External Storage Devices.

Techniques That Don’t Work Well.

Techniques That Work Well.

Information Retrieval and Databases.

13. Sorting.

Laying Some Groundwork.

Priority Queue Sorting Methods.

Divide-and-Conquer Methods.

Methods That Insert Keys and Keep Them Sorted.

O(n) Methods—Address Calculation Sorting.

Other Methods.

Comparison and Perspective.

14. Advanced Recursion.

Recursion as a Descriptive Method.

Using Recursion to Build a Parser.

Translating from Infix to Postfix.

Recursion and Program Verification.

15. Object-Oriented Programming.

Exploring OOP Through Progressive Examples.

Building Systems Using Object-Oriented Programming.

Advantages and Disadvantages of Object-Oriented Programming.

16. Advanced Software Engineering Concepts.

The Software Lifecycle.

Software Productivity.

Software Process Models.

Appendix Math Reference and Tutorial. 0201591189T04062001

Product Details

ISBN:
9780201591187
Author:
Standish, Thomas A.
Publisher:
Pearson
Location:
Reading, Mass. :
Subject:
Computer Science
Subject:
Programming Languages - C
Subject:
Programming Languages - General
Subject:
C (computer program language)
Subject:
Data structures (computer science)
Subject:
Software engineering
Subject:
Computer algorithms
Subject:
Data structures
Subject:
Language, literature and biography
Subject:
Programming - Algorithms
Subject:
C
Subject:
Software Engineering - Programming and Languages
Copyright:
Edition Description:
Trade paper
Series Volume:
no. 25-015
Publication Date:
September 1994
Binding:
TRADE PAPER
Grade Level:
College/higher education:
Language:
English
Illustrations:
Yes
Pages:
748
Dimensions:
9 x 8 x 1.7 in 1365 gr

Other books you might like

  1. Elementary Categories, Elementary... New Trade Paper $150.25
  2. Annals of Mathematics Studies #16:... New Trade Paper $50.25
  3. PostgreSQL: Introduction and Concepts Used Trade Paper $7.50
  4. Client/Server Computing New Hardcover $45.75
  5. Mathematics: Form & Function Used Hardcover $75.00
  6. Beginning Databases with PostgreSQL Used Trade Paper $11.50

Related Subjects

» Computers and Internet » Computer Languages » C
» Computers and Internet » Computers Reference » General
» Computers and Internet » Personal Computers » General
» Computers and Internet » Software Engineering » Algorithms
» Computers and Internet » Software Engineering » Programming and Languages
» Textbooks » General

Data Structures, Algorithms, and Software Principles in C New Trade Paper
0 stars - 0 reviews
$182.25 In Stock
Product details 748 pages Addison Wesley Publishing Company - English 9780201591187 Reviews:
spacer
spacer
  • back to top

FOLLOW US ON...

     
Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at Powells.com.