Data Structures and Algorithms Using C# (平裝)

Michael McMillan






C# programmers: no more translating data structures from C++ or Java to use in your programs! Mike McMillan provides a tutorial on how to use data structures and algorithms plus the first comprehensive reference for C# implementation of data structures and algorithms found in the .NET Framework library, as well as those developed by the programmer. The approach is very practical, using timing tests rather than Big O notation to analyze the efficiency of an approach. Coverage includes arrays and array lists, linked lists, hash tables, dictionaries, trees, graphs, and sorting and searching algorithms, as well as more advanced algorithms such as probabilistic algorithms and dynamic programming. This is the perfect resource for C# professionals and students alike.

Table of Contents

  Preface page vii
  Chapter 1
  An Introduction to Collections, Generics, and the Timing Class 1
  Chapter 2
  Arrays and ArrayLists 26
  Chapter 3
  Basic Sorting Algorithms 42
  Chapter 4
  Basic Searching Algorithms 55
  Chapter 5
  Stacks and Queues 68
  Chapter 6
  The BitArray Class 94
  Chapter 7
  Strings, the String Class, and the StringBuilder Class 119
  Chapter 8
  Pattern Matching and Text Processing 147
  Chapter 9
  Building Dictionaries: The DictionaryBase Class and the SortedList Class 165
  Chapter 10
  Hashing and the Hashtable Class 176
  Chapter 11
  Linked Lists 194
  Chapter 12
  Binary Trees and Binary Search Trees 218
  Chapter 13
  Sets 237
  Chapter 14
  Advanced Sorting Algorithms 249
  Chapter 15
  Advanced Data Structures and Algorithms for Searching 263
  Chapter 16
  Graphs and Graph Algorithms 283
  Chapter 17
  Advanced Algorithms 314
  References 339
  Index 341