出版時間:2001-5 出版社:高等教育出版社 作者:Robert L.Kruse,Alexander J.Ryba 頁數(shù):717 字?jǐn)?shù):1026000
Tag標(biāo)簽:無
內(nèi)容概要
本書以C++為描述語言,系統(tǒng)介紹數(shù)據(jù)結(jié)構(gòu)的有關(guān)內(nèi)容及程序設(shè)計方法。每章都是先引入實例,然后結(jié)合實例講解知識點,每章后都附有指針和陷阱的內(nèi)容,還配有復(fù)習(xí)思考題,以檢驗讀者的學(xué)習(xí)效果和培養(yǎng)讀者的程序設(shè)計能力。此外,每章后還有深入學(xué)習(xí)本章知識點的閱讀參考資料,有利于讀者加深對本章知識點的理解。書后附錄包括算法分析中的數(shù)學(xué)結(jié)論、隨機數(shù)、程序包和實用函數(shù),以及零散分布在書中的所有程序規(guī)則、指針和陷阱等。
全書既注重原理又重視實踐,內(nèi)容敘述詳細(xì),并配有大量的實例和習(xí)題。書中所有算法均在計算機上運行通過,且程序中做了較詳細(xì)的注解,有利于讀者理解算法的實質(zhì)和編程思想。
本書既可作為高等學(xué)校計算機及相關(guān)專業(yè)學(xué)生的教材,亦可供從事計算機應(yīng)用的工程技術(shù)人員參考,尤其適合那些使用C++語言編程的科技人員。
內(nèi)容: 1. 程序設(shè)計原理 2. 棧的介紹 3. 隊列 4. 鏈?zhǔn)綏:完犃?5. 遞歸 6. 表和串 7. 查找 8. 排序 9.
數(shù)據(jù)表和信息檢索 10. 二叉樹 11. 多叉樹 12. 圖 13. 案例學(xué)習(xí)——波蘭表示法。
作者簡介
編者:(美國)克魯斯 (Robert L.Kruse) Alexander J.Ryba
書籍目錄
Preface
1 Programming Principles
1.1 Introduction
1.2 The Game of Life
1.3 Programming Style
1.4 Coding,Testing,and Turther Refinement
1.5 Program Maintenance
1.6 Conclusions and Preveiw
2 Introduction to Stacks
2.1 Stack Specifications
2.2 Implementation of Stacks
2.3 Application:A Desk Calculator
2.4 Application:Bracket Matching
2.5 Abstract Data Types and Their Implementations
3 Queues
3.1 Definitions
3.2 Implementations of Queues
3.3 Circular Implementation of Queues in C++
3.4 Demonstration and Testing
3.5 Application of Queues:Simulation
4 Linked Stacks and Queues
4.1 Pointers and Linked Structures
4.2 Linked Stacks
4.3 Linked Stacks with Safegards
4.4 Linked Queues
4.5 Application:Polynomial Arithmetic
4.6 Abstract Data Types and Their Implementations
5 Recursion
6 Lists and Srings
7 Searching
8 Sorting
9 Tables and Information rRtrieval
10 Binary Trees
11 Multiway Trees
12 Graphs
13 Case Study:The Polish Notation
A Mathematical Methods
B Random Numbers
C Packages and Utility Functions
D Programming Precepts,Pointers,and Pitfalls
Index
章節(jié)摘錄
版權(quán)頁:插圖:It is the combination of flexibility, generality and efficiency that has made C++ oneof the most popular choices for programmers at the present time.We shall discover that the general principles that underlie the design of alldata structures are naturally implemented by the data abstractin and the object-oriented features of C++. Therefore, we shall carefully explain how these aspectsof C++ are used and briefly summarize their syntax (grammar) wherever they firstarise in our book. In this way, we shall illustrate and describe many of the featuresof C++ that do not belong to its small overlap with C. For the precise details of C++syntax, consult a textbook on C++ programming——we recommend several suchbooks in the references at the end of this chapter.Throughout this chapter we shall concentrate on one case study that, while notlarge by realistic standards, illustrates both the principles of program design andthe pitfalls that we should learn to avoid. Sometimes the example motivates generalprinciples; sometimes the general discussion comes first; always it is with the viewof discovering general principles that will prove their value in a range of practicalapplications. In later chapters we shall employ similar methods for larger projects.The example we shall use is the game called Life, which was introduced by theBritish mathematician J. H. CONWAY in 1970.Life is really a simulation, not a game with players. It takes place on an unboundedrectangular grid in which each cell can either be occupied by an organism or not.Occupied cells are called alive; unoccupied cells are called dead. Which cells arealive changes from generation to generation according to the number of neighbor-ing cells that are alive, as follows.
編輯推薦
《數(shù)據(jù)結(jié)構(gòu)與程序設(shè)計:C++語言描述(影印版)》:教育部高等教育司推薦,國外優(yōu)秀信息科學(xué)與技術(shù)系列教學(xué)用書。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
數(shù)據(jù)結(jié)構(gòu)與程序設(shè)計 PDF格式下載