數據結構和編程設計——套用C語言

數據結構和編程設計——套用C語言

《數據結構和編程設計——套用C語言》是2013年科學出版社出版的圖書,作者是[美]Robert Kruse、C.L.Tondo、Bruce Leung。

基本介紹

  • 書名:數據結構和編程設計——套用C語言
  • 作者:[美]Robert Kruse、C.L.Tondo、Bruce Leung
  • 原版名稱:Data Structures & Program Design in C(Second Edition)
  • 譯者:潘斯斯、匡敏
  • ISBN:9787030362230
  • 頁數:671
  • 定價:95
  • 出版社:科學出版社
  • 出版時間:2013年1月
  • 裝幀:平裝
  • 開本:16開
內容簡介,目錄,

內容簡介

本書以C++為描述語言,系統介紹數據結構的有關內容及程式設計方法。每章都是先引入實例,然後結合實例講解知識點,每章後都附有指針和陷阱的內容,還配有複習思考題,以檢驗讀者的學習效果和培養讀者的程式設計能力。此外,每章後還有深入學習本章知識點的閱讀參考資料,有利於讀者加深對本章知識點的理解。全書既注重原理又重視實踐,內容敘述詳細,並配有大量的實例和習題。書中所有算法均在計算機上運行通過,且程式中做了較詳細的註解,有利於讀者理解算法的實質和編程思想。
本書既可作為高等學校計算機及相關專業學生的教材,亦可供從事計算機套用的工程技術人員參考。

目錄

PFWEFACE
Synopsis
Changes in the Second Edition
Course Structure
Book Production
Acknowledgments
CHAPTER 1
Programming Principles 1
1.1 Introduction 2
1.2 The Game of Life 4
1.2.1 Rules for the Game of Life 4
1.2.2 Examples 5
1.2.3 The Solution 6
1.2.4 Life: The Main Program 7
1.3 Programming Style 10
1.3.1 Names 10
1.3.2 Documentation and Format 12
1.3.3 Refinement and Modularity 14
1.4 Coding, Testing, and
Further Refinement 19
1.4.1 Stubs 19
1.4.2 Counting Neighbors 20
1.4.3 Input and Output 21
1.4.4 Drivers 24
1.4.5 Program Tracing 25
1.4.6 Principles of Program Testing 26
Pointers and Pitfalls 30
Review Questions 32
References for Further Study 32
C 32
Programming Principles 33
The Game of Life 33
CHAPTER 2
Introduction to
Software Engineering 34
2.1 Program Maintenance 35
2.1.1 Review of the Life Program 35
2.1.2 A Fresh Start and a New Method for Life 37
2.2 Algorithm Development: A Second Version of Life 40
2.2.1 Lists: Specifications for a Data Structure 40
2.2.2 The Main Program 45
2.2.3 Information Hiding 47
2.2.4 Refinement: Development of the Subprograms 48
2.2.5 Verification of Algorithms 50
2.3 Coding 55
2.3.1 The List Functions 55
2.3.2 Error Processing 56
2.3.3 Demonstration and Testing 57
2.4 Coding the Life Functions 62
2.5 Program Analysis and Comparison 66
2.6 Conclusions and Preview 68
2.6.1 The Game of Life 68
2.6.2 Program Design 70
2.6.3 C 73
Pointers and Pitfalls 75
Review Questions 75
References for Further Study 76
CHAPTER 3
Stacks and Recursion 77
3.1 Stacks 78
3.1.1 introduction 78
3.1.2 First Example: Reversing a Line 79
3.1.3 Information Hiding 80
3.1.4 Specifications for a Stack 81
3.1.5 Implementation of Stacks 83
3.1.6 Linked Stacks 85
3.2 Introduction to Recursion 91
3.2.1 Stack Frames for Subprograms 91
3.2.2 Tree of Subprogram Calls 91
3.2.3 Factorials: A Recursive Definition 93
3.2.4 Divide and Conquer: The Towers of Hanoi 95
3.3 Backtracking: Postponing the Work 101
3.3.1 Solving the Eight-Queens Puzzle 102
3.3.2 Example: Four Queens 102
3.3.3 Backtracking 103
3.3.4 Refinement: Choosing the Data Structures 104
3.3.5 Analysis of Backtracking 107
3.4 Principles of Recursion 110
3.4.1 Designing Recursive Algorithms 110
3.4.2 How Recursion Works 111
3.4.3 Tail Recursion 115
3.4.4 When Not to Use Recursion 116
3.4.5 Guidelines and Conclusions 120
Pointers and Pitfalls 122
Review Questions 124
References for Further Study 124
CHAPTER 4 Queues and Linked Lists
4.1 Definitions 127
4.2 Implementations of Queues 131
4.3 Circular Queues in C 135
4.4 Application of Queues: Simulation 139
……
CHAPTER 5 General Lists
CHAPTER 6 Searching
CHAPTER 7 Sorting
CHAPTER 8 Tables and Information Retrieval
CHAPTER 9 Binary Trees
CHAPTER 10 Multiway Trees
CHAPTER 11 Graphs
CHAPTER 12 Case Study: The Polish Notation
APPENDIX A Mathematical Methods
APPENDIX B Removal of Recursion
APPENDIX C An Introduction to C
References for Further Study
INDEX

相關詞條

熱門詞條

聯絡我們