|
|
1. |
Data structure concepts. Introduction and understanding of the behavior of basic data structures (lists, stacks, queues, trees (binary trees and tree traversals, height-balanced trees), graphs, hash tables). Ability to analyze a problem and determine the appropriate data structure for the problem. |
2. |
Lectures attempt to impart the importance of data modeling and data structures in advanced programming. |
3. |
Elementary algorithms: sorting, searching and hashing. |
4. |
The notion of data structures and its impact on the performance of algorithms (time and space complexity)/programs. |
5. |
Recursions: Basic definitions, applications, their relationships with stacks. |
more...
6. |
Abstract data types: motivations and basic concepts. |
7. |
The mechanics of development: code design, organization, using the development environment. |
8. |
Data structure implementation issues. Understanding of dynamic versus array implementations of data structures, factors involved in deciding on an implementation and giving students practice in writing modular programs using the data structures that have been studied. |
9. |
The different language constructs for creating a user's own data structures are also examined. |
10. |
C programming. Becoming a "fluent" C programmer. Understanding data structure implementation in C using header files and implementation files. Introduction to object-oriented programming in C++. |
|