Difference between revisions of "DataStructures"

From SourceWiki
Jump to navigation Jump to search
Line 4: Line 4:
 
=Introduction=
 
=Introduction=
  
'''If your data structures effectively represent your area of modelling interest, the logic and control flow of your code will be naturally constrained and hence simpler and more robust to bugs.'''
+
'''''If your data structures effectively represent your area of modelling interest, the logic and control flow of your code will be naturally constrained and hence simpler and more robust to bugs.'''''
  
 
<pre>
 
<pre>

Revision as of 17:54, 24 February 2010

'Data Structures: starting to designing your program'

Introduction

If your data structures effectively represent your area of modelling interest, the logic and control flow of your code will be naturally constrained and hence simpler and more robust to bugs.

svn co http://soutce.ggy.bris.ac.uk/subversion-open/data-structures/trunk ./data-structures

Stacks

cd examples/example1
make
./simple-stack.exe
A Stack.., in this case of boxes.

Linked Lists

cd ../example2
make
./simple-LL.exe


A train--of knitted pigs--is much like a linked list.

Hash Tables

cd examples/example1
make
./simple-hash.exe
A hash table mapping names to phone numbers.

Trees

Quadtrees

http://en.wikipedia.org/wiki/Quadtree

A quadtree could be used to store:

  • A sparse matrix (Can think of an image this way)
  • Variable resolution data (parent's value is the average of its children's values)

The C++ Standard Template Library