Contents: CS2

From

(Difference between revisions)
Jump to: navigation, search
m (Unprotected "CS2")
(Linear Structures)
Line 28: Line 28:
== ADTs and Data Structures ==
== ADTs and Data Structures ==
===Linear Structures===
===Linear Structures===
-
*Overview of Linear Abstract Data Types
+
*[[Linear ADTs|Overview of Linear Abstract Data Types]] <br/>
*[[Stacks|Stacks]] <br/>   
*[[Stacks|Stacks]] <br/>   
*[[Queues|Queues]] <br/>  
*[[Queues|Queues]] <br/>  

Revision as of 20:25, 26 March 2009

Introduction (needs to be written)

Contents

Data Structures and Abstract Data Types

A data structure is a means of organizing data in a computer’s memory to try to optimize either the memory needed or the time to access the data. This brings up the classic trade-off in Computer Science: the trade-off between Time and Space. In most situations today, it seems that we are primarily interested in minimizing the Time aspect. But, given smaller and smaller devices that increasingly do more (think of the evolution of the cell phone), minimizing the Space aspect can be important also.

There is sometimes a difference made between a data structure and an abstract data type (ADT). An ADT describes the public interface of a data structure: the type of data and the valid operations on the data. An ADT, however, does not consider an implementation, and this is the essential difference.

Introduction to Computability and Complexity


Algorithms


Preliminaries of Data Organization


ADTs and Data Structures

Linear Structures


Trees

  • Overview of Tree Abstract Data Types
  • Binary Trees
  • Binary Search Trees
  • AVL Trees
  • Red-Black Trees
  • Splay Trees
  • Heaps
  • B-Trees


Graphs

  • Overview of Graph Abstract Data Types
  • Graph representation methods
  • Common Graph Algorithms


Unstructured Collections

  • Overview of unstructured Collection Abstract Data Types
  • Bags and Sets
  • Maps and Dictionaries
  • Hash Tables


Personal tools
MediaWiki Appliance - Powered by TurnKey Linux