数据结构大作业》实验教学大纲

课程代码

045101681

课程名称

数据结构大作业

英文名称

Data Structure Project Design

课程类别

集中实践课

课程性质

必修

学时

总学时:一周

学分

1.0

开课学期

第四学期

开课单位

计算机科学与工程学院

适用专业

计算机科学与技术创新班、联合班

授课语言

英文授课

先修课程

数据结构

课程对毕业要求的支撑

本课程对学生达到如下毕业要求有如下贡献:

  1. 设计/开发解决方案:能够设计针对计算机工程复杂问题的解决方案,设计满足特定需求的计算机软硬件系统,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。

  2. 研究:培养学生具备计算机系统相关知识并对计算机工程复杂问题进行研究,具有计算机系统研发基本能力、具备问题分析和建模的能力,具有系统级的认知能力和实践能力,掌握自底向上和自顶向下的问题分析方法。

课程目标

该课程的目标是:

 1. 加强学生对数据结构的了解[12]

2. 提高应用数据结构解决实际问题的技巧[3]

课程简介

本课程探讨了计算机科学中的一些基础数据结构和算法,并学习用C ++实现它们。 数据结构包括链表,堆栈,队列,树,堆,哈希表和图。此外,本课程还讨论了包括搜索,排序,遍历树和图,散列以及最短路径的算法。

主要仪器设备与软件

计算机

C++编程环境

实验报告

本课程报告应按以下要求编写:

A.背景:介绍所选项目及其目标

B.设计原则:陈述要求,功能和假设。

C.模型讨论:描述和解释模型和程序。分析程序的时间复杂度。讨论模型与数据结构之间的关系

D.示范:描述该计划。报告并分析结果。

E.结论:总结该项目。

I.每个成员的个人报告:描述他们的职责

考核方式

实验报告:20%

程序:50%

演示:15%

创新点:15%

教材及参考书

Clifford A. Shaffer, “A Practical Introduction to Data Structures and Algorithm Analysis (2nd edition)”, Publishing House of Electronics Industry (Chinese Publisher), 2009

Adam Drozdek, “Data Structures and Algorithms in C++ (2nd edition)”, Brooks/Cole, 2001

Nell Dale, “C++ Data Structures (3rd edition)”, Jones and Bartlett Publishers, Inc, 2003

制定人及制定时间

陈百基,2019414


《数据结构大作业》实验教学内容与学时分配

实验项目编号

实验项目名称

实验学时

实验内容提要

实验类型

实验要求

每组人数

主要仪器设备与软件

1

系统设计

3

设计一个简单的系统,例如 图书馆图书管理系统。 重点关注如何将数据结构与系统设计相关联。

设计性

选做

4

计算机

C++编程环境

2

执行

3

根据实验#1中的设计实现系统。重点关注如何有效地实施数据结构

设计性

选做

4

计算机

C++编程环境


 “Data Structure Project DesignSyllabus

Course Code

045101681

Course Title

Data Structure Project Design

Course Category

Practice Course

Course Nature

Compulsory Course

Class Hours

1 week

Credits

1.0

Semester

Fourth

Institute

School of Computer Science and Engineering

Program Oriented

Innovation Class

Teaching Language

English

Prerequisites

Data Structure

 Student Outcomes

 (Special Training Ability)

This course helps student to enhance their ability in the following aspect:

  1. Design / Development Solutions: An ability to design solutions for computer engineering complex problems, to design computer hardware and software systems that meet with specific requirements, and to embody innovation awareness in the design process and take into account social, health, safety, cultural and environmental factors.

  2. Research: An ability to develop computer system-related knowledge and research computer engineering complex issues, to develop the basic capacity of computer systems research & development, systematic cognitive and practice, master the Bottom-up and top-down problem analysis methods.

Course Objectives

The objectives of the course are:

1. Strengthen students’ knowledge of data structure[1,2]

2. Enhance the skill of applying data structure to solve real problems[3]

Course Description

This course explores a number of fundamental data structures and algorithms in computer science, and learn to implement them in C++. The data structures include linked lists, stacks, queues, trees, heaps, hash tables, and graphs. In addition, this course also discusses the algorithms including searching, sorting, traversing trees and graph, hashing, and finding shortest paths in graphs.

Instruments and Equipments

Computer

C++ development environment

Experiment Report

Report of this course should be written according following requirements.

 A.Background: Introduce the selected project and its objectives

 B.Design Principle: State the requirements, functions, and assumptions.

 C.Model Discussion: Describe and explain the model and the program. Analyze the time complexity of your program. Discuss relation between the model and Data Structure

 D.Demonstration: Describe the program. Report and analyze the results.

 E.Conclusion: Summarize the project.

 I.Individual Report for each member: describe their duties


Examination Method

Report:20%

Program:50%

Presentation:15%

Creativity:15%

Teaching Materials and Reference Books

Clifford A. Shaffer, “A Practical Introduction to Data Structures and Algorithm Analysis (2nd edition)”, Publishing House of Electronics Industry (Chinese Publisher), 2009

Adam Drozdek, “Data Structures and Algorithms in C++ (2nd edition)”, Brooks/Cole, 2001

Nell Dale, “C++ Data Structures (3rd edition)”, Jones and Bartlett Publishers, Inc, 2003

Prepared by Whom and When

Patrick P.K. Chan, 2019/4/14

 “Data Structure Course Design” Experimental Teaching Arrangements

No.

Experiment Item

Class Hours

Content Summary

Category

Requirements

Number of Students Each Group

Instruments, Equipments and Software

1

System Design

3

Design a simple system, e.g. a library book management system. Focus on how to associate data structure to the system design.

Design

Elective

4

Computer

C++ programming environment

2

Implementation

3

Implement the system according the design in Lab #1. Focus on how to implement the data structure efficiently

Design

Elective

4

Computer

C++ programming environment