The class presents a practical approach to data structures for computer intensive products that can be proven to satisfy correctness and performance requirements. One can obtain almost any data structure from a book or online. However, it takes experience to identify data structures known to provide the desired behavior; to extend them to satisfy the specific application; and to evaluate the deliverables to show that they satisfy the composite standard and custom requirements. The lectures, the project (three linked parts) and the exams are designed to provide students with such experience. This includes having projects which require sustained effort rather than last minute code-a-thons, exams written to elicit knowledge, not empty verbiage, and course policies which reward hard work and learning from mistakes. To put it bluntly, I'll do my best to help you to make mistakes and then support your efforts to learn from them. This is a thinking class, not an echo information class. | The class presents a practical approach to data structures for computer intensive products that can be proven to satisfy correctness and performance requirements. One can obtain almost any data structure from a book or online. However, it takes experience to identify data structures known to provide the desired behavior; to extend them to satisfy the specific application; and to evaluate the deliverables to show that they satisfy the composite standard and custom requirements. The lectures, the project (three linked parts) and the exams are designed to provide students with such experience. This includes having projects which require sustained effort rather than last minute code-a-thons, exams written to elicit knowledge, not empty verbiage, and course policies which reward hard work and learning from mistakes. To put it bluntly, I'll do my best to help you to make mistakes and then support your efforts to learn from them. This is a thinking class, not an echo information class. |