- One dimension arrays. Two and more dimensions' arrays. Arrays and functions. Arrays of strings. Special type arrays: symmetric, sparse etc.
- Sstructures and unions in C. Simple structures , data input. Nested structures. Structures and functions. Arrays of structures. Pointers and structures.
- Dynamic memory allocation. Functions malloc( ), calloc( ), realloc( ) and free( ).
- Stacks. Using stacks. Push and pop algorithms.
- Queues. Using queues. Waiting queues. Priority queues. Cyclic queues. Push and pop algorithms.
- Linked lists. Simple and double linked lists. Operations in lists: insertion and deletion of node, searching, joining, reversing, movement etc. Impementation using C.
- Trees. Definitions. Implementation using array. με πίνακα. Implementation using pointers. Binary search trees. Traversing. Searching, insertion and deletion of node. Balanced trees. AVL trees. Applications.
- Special types and use of trees. Thread trees. Binary heaps. Quadrature trees. Digital trees. Tries. B-trees. Red-black trees. Applications in digital image processing.
- Graphs. Definitions. Graphs' representation. Adjacent nodes' array and list. Minimum spanning trees. Graphs' traverse.
Exercises and projects based on theory.