Overleg:Datastructuur

message: __TOC__

message: *Volgense de engelse wikipedia zijn er veel meer datastructuren. De engelse lijst lijkt overigens ergens wel op deze lijst. Wat is het verschil tussen een datatype en een datastructuur? (Met andere woorden, zit het op de engelse wikipedia raar in elkaar, of niet?) immeëmosol 21 okt 2008 09:59 (CEST)
thread_title: Vragen etc.

message: Dit is een lijst van datastructuren. Voor een meer algemene lijst van termen, zie en:list of terms relating to algorithms and data structures.
==Basis datastructuren==
Generieke type                                             	Specifieke type
Primitieve type (ookwel elementaire type) en:primitive type	
*Teken, Character
*Integraal, Integer
*Tekenreeks, String
*Double
*Float
Samengesteld type en:Composite type                        	
*en:Struct
*en:Bit field
*en:Union  Union
**en:Tagged union
*en:Gap buffer
==Lineaire datastructuren==
Generieke type                                 	Specifieke types
Lijst (of vector of reeks en:sequence)         	
*en:Array                               Array
**en:Bitmaps                            Bitmaps
***Images              Afbeeldingen
***en:Heightfields                      Heightfields
**en:Dynamic array                      Dynamische array
**en:Parallel array                     Parallele array
**en:Sparse array
**Matrix   Matrix
***en:Sparse matrix
**en:Bitboard
Lijst (of vector of reeks en:sequence)         	
*en:Linked list
**en:Unrolled linked list
**en:Xor linked list
**en:Doubly linked list
Lijst (of vector of reeks en:sequence)         	
*en:VList
Lijst (of vector of reeks en:sequence)         	
*Buffer
**Stack
**Queue
***en:Priority queue
**** Double-ended priority queue
**en:Deque
**en:Circular buffer
en:Associative array (a.k.a. dictionary or map)	
*en:Hash table
en:Associative array (a.k.a. dictionary or map)	
*en:Self-balancing binary search tree
en:Associative array (a.k.a. dictionary or map)	
==Non linear data structures==
General type           	Specific types	
Graph data structures  	
*en:Adjacency list
*en:Adjacency matrix
*en:Disjoint-set data structure
*en:Graph-structured stack
*en:Scene graph	
en:Tree data structures	
*en:M-Way Tree
**en:B-tree
***en:2-3 tree
***en:2-3-4 tree
***en:B+ tree
****Generalized search tree
***en:B* tree
***B# tree
***en:UB tree
***en:R tree
****en:Hilbert R-tree
****en:R+ tree
****en:R* tree
**Enfilade	
en:Tree data structures	
*en:K-ary tree
*en:Binary tree
**en:Binary heap
**en:Binary search trees  (each tree node compares entire key values)
***en:Self-balancing binary search trees
****en:AVL tree
****en:Dancing tree
****en:Red-black tree
*****en:AA tree
****en:Scapegoat tree
****en:Splay tree
****en:Top Trees
***en:Interval tree
***en:Treap
**en:Exponential tree	
en:Tree data structures	
*en:Trie family  (each tree node compares a bitslice of key values)
**Kd trie
**en:Radix tree
**en:Sparse trie
***en:Hash trie
**en:Suffix tree
***en:Directed Acyclic Word Graph (DAWG)
***en:Generalised suffix tree
**en:van Emde Boas tree	
en:Tree data structures	
*Heap
**en:Binary heap
**en:Binomial heap
**en:Fibonacci heap
**en:2-3 heap
**en:Soft heap
** en:Pairing heap
** Leftist heap
** en:Treap
** en:Beap
** en:Skew heap	
en:Tree data structures	
*Other Search Trees
**en:(a,b) tree
**en:Fusion tree	
en:Tree data structures	
*en:Syntax tree
**en:Abstract syntax tree
**en:Parse tree	
en:Tree data structures	
*en:Space partitioning
**en:Bounding interval hierarchy
**Bounding volume hierarchy
**en:BSP tree
***Kd tree
****Adaptive kd tree
****Implicit kd tree
****Kdb tree
**en:Octree
**en:Quadtree	
en:Tree data structures	
*Other trees
**en:And-or tree
**en:Hash tree
**en:Metric tree
***BK tree
***en:Cover tree
***en:M tree
***VP tree
**en:Finger tree
***en:2-3 finger tree
***en:AVL finger tree
***en:Non-lazy finger tree	
en:Tree data structures	
*en:Decision theory
**en:Binary decision diagram
**en:Decision tree
***en:Alternating decision tree
***Minimax tree
****en:Expectiminimax tree	
==Comparison==
An attempt to classify data structures based on feature attributes:
Structure        	Stable	Unique	Cells per Node
Bag (en:multiset)	no    	no    	1
Set              	no    	yes   	1
List             	yes   	no    	1
Map              	no    	yes   	2
"Stable" means that input order is retained. Other structures such as "linked list" and "stack" cannot easily be defined this way because there are specific operations associated with them.
thread_title: Van de Engelse WikiPedia

message: Generieke type                                             	Specifieke type
Primitieve type (ookwel elementaire type) en:primitive type	
*Teken, Character
*Integraal, Integer
*Tekenreeks, String
*Double
*Float
Samengesteld type en:Composite type                        	
*en:Struct
*en:Bit field
*en:Union  Union
**en:Tagged union
*en:Gap buffer
thread_title: Basis datastructuren

message: Generieke type                                 	Specifieke types
Lijst (of vector of reeks en:sequence)         	
*en:Array                               Array
**en:Bitmaps                            Bitmaps
***Images              Afbeeldingen
***en:Heightfields                      Heightfields
**en:Dynamic array                      Dynamische array
**en:Parallel array                     Parallele array
**en:Sparse array
**Matrix   Matrix
***en:Sparse matrix
**en:Bitboard
Lijst (of vector of reeks en:sequence)         	
*en:Linked list
**en:Unrolled linked list
**en:Xor linked list
**en:Doubly linked list
Lijst (of vector of reeks en:sequence)         	
*en:VList
Lijst (of vector of reeks en:sequence)         	
*Buffer
**Stack
**Queue
***en:Priority queue
**** Double-ended priority queue
**en:Deque
**en:Circular buffer
en:Associative array (a.k.a. dictionary or map)	
*en:Hash table
en:Associative array (a.k.a. dictionary or map)	
*en:Self-balancing binary search tree
en:Associative array (a.k.a. dictionary or map)
thread_title: Lineaire datastructuren

message: General type           	Specific types	
Graph data structures  	
*en:Adjacency list
*en:Adjacency matrix
*en:Disjoint-set data structure
*en:Graph-structured stack
*en:Scene graph	
en:Tree data structures	
*en:M-Way Tree
**en:B-tree
***en:2-3 tree
***en:2-3-4 tree
***en:B+ tree
****Generalized search tree
***en:B* tree
***B# tree
***en:UB tree
***en:R tree
****en:Hilbert R-tree
****en:R+ tree
****en:R* tree
**Enfilade	
en:Tree data structures	
*en:K-ary tree
*en:Binary tree
**en:Binary heap
**en:Binary search trees  (each tree node compares entire key values)
***en:Self-balancing binary search trees
****en:AVL tree
****en:Dancing tree
****en:Red-black tree
*****en:AA tree
****en:Scapegoat tree
****en:Splay tree
****en:Top Trees
***en:Interval tree
***en:Treap
**en:Exponential tree	
en:Tree data structures	
*en:Trie family  (each tree node compares a bitslice of key values)
**Kd trie
**en:Radix tree
**en:Sparse trie
***en:Hash trie
**en:Suffix tree
***en:Directed Acyclic Word Graph (DAWG)
***en:Generalised suffix tree
**en:van Emde Boas tree	
en:Tree data structures	
*Heap
**en:Binary heap
**en:Binomial heap
**en:Fibonacci heap
**en:2-3 heap
**en:Soft heap
** en:Pairing heap
** Leftist heap
** en:Treap
** en:Beap
** en:Skew heap	
en:Tree data structures	
*Other Search Trees
**en:(a,b) tree
**en:Fusion tree	
en:Tree data structures	
*en:Syntax tree
**en:Abstract syntax tree
**en:Parse tree	
en:Tree data structures	
*en:Space partitioning
**en:Bounding interval hierarchy
**Bounding volume hierarchy
**en:BSP tree
***Kd tree
****Adaptive kd tree
****Implicit kd tree
****Kdb tree
**en:Octree
**en:Quadtree	
en:Tree data structures	
*Other trees
**en:And-or tree
**en:Hash tree
**en:Metric tree
***BK tree
***en:Cover tree
***en:M tree
***VP tree
**en:Finger tree
***en:2-3 finger tree
***en:AVL finger tree
***en:Non-lazy finger tree	
en:Tree data structures	
*en:Decision theory
**en:Binary decision diagram
**en:Decision tree
***en:Alternating decision tree
***Minimax tree
****en:Expectiminimax tree
thread_title: Non linear data structures

message: An attempt to classify data structures based on feature attributes:
Structure        	Stable	Unique	Cells per Node
Bag (en:multiset)	no    	no    	1
Set              	no    	yes   	1
List             	yes   	no    	1
Map              	no    	yes   	2
"Stable" means that input order is retained. Other structures such as "linked list" and "stack" cannot easily be defined this way because there are specific operations associated with them.
thread_title: Comparison