圖書信息
出版社: 清華大學出版社; 第1版 (2009年9月1日)
外文書名: Data Structures Using C
叢書名: 大學計算機教育國外著名教材系列
平裝: 604頁
正文語種: 簡體中文, 英語
開本: 32
ISBN: 7302207313, 9787302207313
條形碼: 9787302207313
尺寸: 20.8 x 14.6 x 2.6 cm
重量: 640 g
作者簡介
作者:(印象)克里斯哈拉莫斯(R Krishnamoorthy) (印象)庫瑪納維爾(G Indirani Kumravel)
R Krishnamoorthy, PhD is Professor of Information Technology, BharathidasanInstitute of Technology, Bharathidasan University, Trichy. Dr R Krishnamoorthyreceived his M. Tech Degree in Computer Science and Engineering from IndianInstitute of Technology, Kanpur and PhD degree in Computer Science and Engineer-ing from Indian Institute of Technology, Kharagpur, with specialization in ComputerVision and Image Processing. He has 24 years of teaching experience. He is theauthor of three books, and forty-four technical papers published in National andInternational Conferences and International Journals. He has produced five PhDs. Heis member of CSI, ISTE, IEEE and ACM. His areas of interest include network secu-rity, image processing and software testing.
G Indirani Kumaravel is Senior lecturer in Computer Science and Engineering,Annamaiai University, Chidambaram. She received her M E degree in ComputerScience and Engineering from Annamalai University. Indirani has 12 years of teach-ing experience. She is a member of CSI. Her areas of interest include Speech andImage Processing.
內容簡介
《數據結構(C語言版)》內容簡介:有關數據結構的教材很多,而《數據結構(C語言版)》是一本非常有特點的教材,每章先簡要介紹本章的主要內容,給出基本的知識背景,然後使用大量的示例、表格、插圖和流程圖來闡述各種概念和知識,方便了讀者的理解,同時給出了大量的原始碼,幫助讀者實現實際的數據結構,每章後面提供了複習題、多項選擇題和編程練習題,有助於讀者鞏固所學知識的理解,是一本非常理想的數據結構教材。
每章先簡要介紹本章的主要內容,給出基本的知識背景。
使用了大量的已求解示例、表格、插圖和流程圖,大大方便了讀者的理解。
給出了大量的原始碼,幫助讀者實現實際的數據結構,從而提供程式的可靠性。
每章後面提供了複習題、多項選擇題和編程練習題,有助於鞏固所學知識的理解。
通過概念和編程示例來闡述每種數據結構的套用。
目錄
Preface ix
1. Data Structures-An Overview 1
1.1 Introduction 1
1.2 Data Types 3
1.3 Program Modules 4
1.4 Control Structures 7
1.5 looping Structures 13
1.6 Arrays 16
1.7 Structures 24
1.8 Pointers 28
1.9 Recursion 31
Review Yourself 35
Multiple Choice Questions 36
Programming Exercises 38
2. strings and Character Manipulation 39
2.1 Introduction 39
2.2 Primitive Functions or Operations on Strings 39
2.3 Representation of Strings 41
2.4 String Manipulation in C 42
2.5 String Manipulation Applications 58
Review Yourself 66
Multiple Choice Questions 67
Programming Exercises 67
3. Stacks 68
3.1 Introduction 68
3.2 Definition 68
3.3 Primitive Operations 69
3.4 An abstract Data Type (ADT) 70
3.5 Implementation 70
3.6 Applications of Stack 76
Review Yourself 99
Multiple Choice Questions 99
Programming Exercises 101
4. Queues 102
4.1 Introduction 102
4.2 Definition 102
4.3 Operations on a Queue 103
4.4 ADT for Queues 104
4.5 Representation of Queue 104
4.6 Various Other Queue Structures 112
4.7 Applications 152
Review Yourself 165
Multiple Choice Questions 165
Programming Exercises 165
5. Linked Lists 168
5.1 Introduction 168
5.2 Definition 168
5.3 ADT for Linked List 169
5.4 singly Linked List 169
5.5 doubly Linked List 184
5.6 Circular Linked Lists 198
5.7 Sparse Matrices 210
5.8 Applications 232
5.9 Additional Programs 254
Review Yourself 272
Multiple Choice Questions 272
Programming Exercises 273
6. Trees 274
6.1 Introduction 274
6.2 Definition 274
6.3 Terminologies Used 274
6.4 Binary Tree 276
6.5 Threaded Binary Trees296
6.6 Heap Trees 317
6.7 Deaps 327
6.8 Huffman Algorithm 337
6.9 Decision Trees 344
6.10 Game Tree 351
6.11 Applications 358
Review Yourself 362
Multiple Choice Questions 362
Programming Exercises 363
7. Graphs 364
7.1 Introduction 364
7.2 Definition 365
7.3 Terminologies Used 366
7.4 Representation of Graphs 369
7.5 ADT for Graphs 372
7.6 Extra Information that can be Retrieved from the Adjacency Matrix of the Graph 373
7.7 Operations on Graphs 374
7.8 Applications 410
7.9 Unweighted Shortest Path for Graphs Using Adjacency Matrix 439
7.10 Introduction to NP-completeness 444
Review Yourself 445
Multiple Choice Questions 445
Programming Exercises 446
8. Sorting 447
8.1 Introduction 447
8.2 Definition 448
8.3 Internal Sorting 448
8.4 External Sorting 474
Review Yourself 483
Multiple Choice Questions 483
Programming Exercises 484
9. Searching 485
9.1 Introduction 485
9.2 Quantity Dependent Search Techniques 485
9.3 Density Dependent Search Techniques 490
9.4 Indexed Search Techniques 509
Review Yourself 512
Multiple Choice Questions 512
Programming Exercises 513
10. Search Trees 514
10.1 Introduction 514
10.2 Binary Search Tree (BST) 514
10.3 AVL Trees 530
10.4 B - Trees 544
10.5 B+ - Trees 562
10.6 Tries 572
Review Yourself 587
Multiple Choice Questions 587
Programming Exercises 588
11. File Structures 589
11.1 Files 589
Review Yourself 599
Multiple Choice Questions 600
Programming Exercises 600
Index 602