File Structures
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Home > Computing and Information Technology > Computer programming / software engineering > Programming and scripting languages: general > File Structures: An Object-Oriented Approach with C++: International Edition
File Structures: An Object-Oriented Approach with C++: International Edition

File Structures: An Object-Oriented Approach with C++: International Edition


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

This best-selling book provides the conceptual tools to build file structures that can be quickly and efficiently accessed. It teaches good design judgment through an approach that puts the "hands-on" work of constructing and running programs at the center of the learning process. This third edition presents the practice of object-oriented design and programming with complete implementations in C++ of many of the file structures techniques, including direct access I/O, buffer packing and unpacking, indexing, cosequential processing, B-trees, and external hashing. By following the examples, students will gain a significant understanding of file structure techniques, and see how C++ can be made an effective software development tool. Every line of code in the book has been tested on a variety of C++ systems. In addition, the class definitions and bodies are collected together in appendices.

Table of Contents:
INTRODUCTION TO FILE STRUCTURES. The Heart of File Structure Design. A Short History of File Structure Design. A Conceptual Toolkit: File Structure Literacy. Object-Oriented Programming in C++. FUNDAMENTAL FILE PROCESSING OPERATIONS. Physical Files and Logical Files. Opening Files. Closing Files. Reading and Writing. Seeking. Special Characters in Files. The UNIX Directory Structure. Physical and Logical Files in UNIX. File-related Header Files. UNIX File System Commands. SECONDARY STORAGE AND SYSTEM SOFTWARE. Disks. Magnetic Tape. Disk versus Tape. Storage as a Hierarchy. A Journey of a Byte. Buffer Management. I/O in UNIX. FUNDAMENTAL FILE STRUCTURE CONCEPTS. Field and Record Organization. Using Classes to Manipulate Buffers. Using Inheritance for Record Buffer Classes. Managing Fixed Length, Fixed Field Buffers. An Object-Oriented Class for Record Files. MANAGING FILES OF RECORDS. Record Access. More about Record Structures. Encapsulating Record Operations in a Single Class. File Access and File Organization. Object-Oriented Approach to File Access. Portability and Standardization. ORGANIZING FILES FOR PERFORMANCE. Data Compression. Reclaiming Space in Files. Finding Things Quickly: An Introduction to Internal Sorting and Binary Searching. Keysorting. INDEXING. What Is an Index? A Simple Index for Entry-Sequenced File. Template Classes in C++. Object-Oriented support for Indexed, Entry-Sequenced Files of Data Objects. Indexes That Are Too Large to Hold in Memory. Indexing to Provide Access by Multiple Keys. Retrieval Using Combinations of Secondary Keys. Improving the Secondary Index Structure: Inverted Lists. Selective Indexes. Binding. COSEQUENTIAL PROCESSING AND THE SORTING OF LARGE FILES. A Model for Implementing Cosequential Processes. Application of the Model to a General Ledger Program. Extension of the Model to Include Multiway Merging. A Second Look at Sorting in Memory. Merging as a Way of Sorting Large Files on Disk. Sorting Files on Tape. Sort-Merge Packages. Sorting and Cosequential Processing in UNIX. MULTI-LEVEL INDEXING AND B-TREES. Introduction: The Invention of the B-Tree. Statement of the Problem. Binary Search Trees are not a Solution. Multi-level Indexing, A Better Approach to Tree Indexes. B-Trees: Working up from the Bottom. Example of Creating a B-Tree. An Object-Oriented Representation of B-Trees. B-Tree MEthods Search, Insert, and Others. B-Tree Nomenclature. Formal Definition of B-Tree Properties. Worst-case Search Depth. Deletion, Merging, and Redistribution. Redistribution during Insertion: A Way to Improve Storage Utilization. B* Trees. Buffering of Pages: Virtual B-Trees. Variable-length Records and Keys. INDEXED SEQUENTIAL FILE ACCESS AND PREFIX B+ TREES. Indexed Sequential Access. Maintaining a Sequence Set. Adding a Simple Index to the Sequence Set. The Content of the Index: Separators Instead of Keys. The Simple Prefix B+ Tree. Simple Prefix B+ Tree Maintenance. Index Set Block Size. Internal Structure of Index Set Blocks: A Variable-order B-Tree. Loading a Simple Prefix B+ Tree. B+ Trees. B-Trees, B+ Trees, and Simple Prefix B+ Trees in Perspective. HASHING. Introduction. A Simple Hashing Algorithm. Hashing Functions and Record Distributions. How Much Extra Memory Should Be Used? Collision Resolution by Progressive Overflow. Storing More Than One Record per Address: Buckets. Making Deletions. Other Collision Resolution Techniques. Patterns of Record Access. EXTENDIBLE HASHING. Introduction. How Extendible Hashing Works. Implementation. Deletion. Extendible Hashing Performance. Alternative Approaches. APPENDIX A. FILE STRUCTURES ON CD-ROM. Using this Appendix. Introduction to CD-ROM. Physical Organization of CD-ROM. CD-ROM Strengths and Weaknesses. Tree Structures on CD-ROM. Hashed Files on CD-ROM. The CD-ROM File System. APPENDIX B. ASCII TABLE. APPENDIX C. SIMPLE FILE INPUT/OUTPUT EXAMPLES. List.c. C program to read and display the contents of a file. List.cpp. C++ program to read and display the contents of a file. Person.h. Definition for class Person, including code for constructor. Writestr.cpp. Write Person objects into a stream file Readdel.cpp. Read Person objects with fields delimited by '|'. Readvar.cpp. Read variable length records and break up into Person objects. Writeper.cpp. Function to write a person to a text file. Readper.cpp. Function to prompt user and read fields of a Person. APPENDIX D. CLASSES FOR BUFFER MANIPULATION. Person.h. Definition for class Person. Person.cpp. Code for class Person. Deltext.h. Definition for class DelimitedTextBuffer. Deltext.cpp. Code for class DelimitedTextBuffer. Lentext.h. Definition for class LengthTextBuffer. Lentext.cpp. Code for class LengthTextBuffer. Fixtext.h. Definition for class FixedTextBuffer. Fixtext.cpp. Code for class FixedTextBuffer. Test.cpp. Test program for all buffer classes. APPENDIX E. A CLASS HIERARCHY FOR BUFFER INPUT/OUTPUT. Person.h. Definition for class Person. Person.cpp. Code for class Person. Iobuffer.h. Definition for class IOBuffer. Iobuffer.cpp. Code for class IOBuffer. Varlen.h. Definition for class VariableLengthBuffer. Varlen.cpp. Code for class VariableLengthBuffer. Delim.h. Definition for class DelimFieldBuffer. Delim.cpp. Code for class DelimFieldBuffer. Length.h. Definition for class LengthFieldBuffer. Length.cpp. Code for class LengthFieldBuffer. Fixlen.h. Definition for class FixedLengthBuffer. Fixlen.cpp. Code for class FixedLengthBuffer. Fixfld.h. Definition for class FixedFieldBuffer. Fixfld.cpp. Code for class FixedFieldBuffer. Buffile.h. Definition for class BufferFile. Buffile.cpp. Code for class BufferFile. Recfile.h. Template class RecordFile. Test.cpp. Test program for buffer classes and RecordFile including template function. APPENDIX F. SIMPLE INDEXING AND TEMPLATE CLASSES. APPENDIX G. MULTI-LEVEL INDEXING: B+ TREE CLASSES. APPENDIX H. CLASSES TO SUPPORT HASHING. 0201874016T04062001

About the Author :
Michael J. Folk manages the Scientific Data Technologies Group at the National Center for Supercomputing Applications at the University of Illinois in Urbana. He has been responsible for developing a general purpose scientific data file format called HDF and software for managing data in high-performance, high-volume computing environments. Prior to his work at Illinois, Dr. Folk was a professor of computer science for fifteen years at Oklahoma State and Drake Universities. Bill Zoellick is currently a partner in and founder of Fastwater LLP, a consultancy focusing on helping companies build effective web businesses. He frequently writes about the issues addressed in Web Engagement and speaks on them at user conferences such as Seybold and Internet World and at various user associations and seminars. He has been a software developer, business owner, executive in a $100 million software company, and, most recently, a management consultant and business analyst. Greg Riccardi is a professor of computer science at Florida State University and an associate of the Supercomputer Computations Research Institute. Professor Riccardiis research interests include scientific databases, object-oriented databases, and parallel computation. He is also affiliated with the Thomas Jefferson National Accelerator Facility where he works on the acquisition, management, and analysis of data for experimental physics. He received a University Teaching Award in 1997 from Florida State University. 0201874016AB05172001


Best Sellers


Product Details
  • ISBN-13: 9780321210791
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Pearson
  • Height: 235 mm
  • No of Pages: 724
  • Sub Title: An Object-Oriented Approach with C++: International Edition
  • Width: 160 mm
  • ISBN-10: 0321210794
  • Publisher Date: 03 Mar 1998
  • Binding: Paperback
  • Language: English
  • Spine Width: 26 mm
  • Weight: 964 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
File Structures: An Object-Oriented Approach with C++: International Edition
Pearson Education (US) -
File Structures: An Object-Oriented Approach with C++: International Edition
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

File Structures: An Object-Oriented Approach with C++: International Edition

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    Fresh on the Shelf


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!