190 likes | 396 Views
DATA STRUCTURES & C # GENERICS . Trent Spangler | Greg Phelps. OUTLINE. Data Structures Importance Definition Examples Different Structure Types Uses. C# Generics Definition Pros & Cons In Depth . Why are data structures important?. Store and manage large amounts of data efficiently
E N D
DATA STRUCTURES & C# GENERICS Trent Spangler | Greg Phelps
OUTLINE Data Structures • Importance • Definition • Examples • Different Structure Types • Uses C# Generics • Definition • Pros & Cons • In Depth
Why are data structures important? • Store and manage large amounts of data efficiently • Databases • Sorting or Indexing Services. • Search structures for information we want
DATA STRUCTURES “A particular way of storing and organizing data.”
Structure Types Array Linked List Sorted List Trees Hash Table Queues & Stacks
Arrays “systematic arrangement of objects, usually in rows and columns” 1, 2, and 3 Dimensional
Linked List Data stored in a “node” which means it contains data and a reference to the next node in the sequence Advantage: Easy insertion or deletion without reorganization Disadvantage: Must search from the beginning because lists are sequential/ordered
Sorted List Similar to Linked List “Nodes” are sorted and are inserted accordingly
Trees Each “node” has no more than two children, referred to as left and right. Example
Hash Table Value = phone # Key = Sandvig Hash(Sandvig) 5 Hash(Gandalf) 5
Queues & Stacks Push: insert Pop: extract Peek: examine
GENERICS What are they?
A simple definition: “Generics allow you to define type-safe data structures, without committing to actual data types.”
Pros • Code Reusability • Type Safety • Increased performance from less code • Cons • Complexity • Learning curve GenericsPros & Cons Mainly used with collections/data structures
Generics In Depth Dracula Explanation of Generics Information is stored in objects instead of variables Note: You cannot implicitly convert type object to other data types (int, string, etc.)
http://en.wikipedia.org/wiki/Data_structure • http://en.wikipedia.org/wiki/Main_Page • http://codersbarn.com/post/2008/04/09/What-are-C-Generics-Part-I.aspx REFERENCES