《数据结构》实验教学大纲

课程代码

045100162

课程名称

数据结构

英文名称

DataStructure

课程类别

专业基础课

课程性质

必修

学时

总学时:64实验学时:16

学分

3.5

开课学期

第三学期

开课单位

计算机科学与工程学院

适用专业

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

授课语言

英文授课

先修课程


课程对毕业要求的支撑

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

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

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

课程目标

该课程的目标是:

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

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

课程简介

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

主要仪器设备与软件

具有C++环境和ACM客户端的计算机

ACM平台

实验报告

考核方式

参与率:20%

正确率:80%

教材及参考书

(3rdedition)”, Publishing House of Electronics Industry (ChinesePublisher), 2013

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

NellDale, “C++ Data Structures (3rd edition)”, Jones and BartlettPublishers, Inc, 2003

制定人及制定时间

陈百基,2019414



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

实验项目编号

实验项目名称

实验学时

实验内容提要

实验类型

实验要求

每组人数

主要仪器设备与软件

1

链表,堆栈

4

实验包括2个基本问题与1个有难度的问题。学生需要利用基础的编程知识与链表,堆栈概念完成实验。

验证性

选做

1

台式电脑

C++编程环境

ACM平台

2

二叉树与树

4

实验包括完成2个基本问题与1个有难度的问题。学生需要利用基础的编程知识与树结构的相关知识完成实验。

验证性

选做

1

台式电脑

C++编程环境

ACM平台

3

排序与查找

4

实验包括完成2个基本问题与1个有难度的问题。学生需要利用基础的编程知识与链表,堆栈,树,排序与查找算法的相关知识完成实验。

验证性

选做

1

台式电脑

C++编程环境

ACM平台

4

寻址与图

4

实验包括完成2个基本问题与1个有难度的问题。学生需要利用基础的编程知识与链表,堆栈,树,寻址与图结构算法的相关知识完成实验。

验证性

选做

1

台式电脑

C++编程环境

ACM平台

DataStructure” Syllabus

Course Code

045100162

CourseTitle

DataStructure

CourseCategory

DisciplinaryBasic Course

CourseNature

CompulsoryCourse

Class Hours

TotalTeaching Hours: 64 Lab Hours: 16 (include Computer UsageHours:16)

Credits

3.5

Semester

ThirdSemester

Institute

Schoolof Computer Science and Engineering

ProgramOriented

InnovationClass

TeachingLanguage

English

Prerequisites

/

StudentOutcomes (Special Training Ability)

Thiscourse helps student to enhance their ability in the followingaspect:

  1. Design/ Development Solutions: An ability to design solutions forcomputer engineering complex problems, to design computerhardware and software systems that meet with specificrequirements, and to embody innovation awareness in the designprocess and take into accountsocial, health, safety, cultural and environmental factors.

  2. Research:Anability to develop computer system-related knowledge and researchcomputer engineering complex issues, to develop the basiccapacity of computer systems research & development,systematic cognitive and practice, master the Bottom-up andtop-down problem analysis methods.

CourseObjectives

Theobjectives of the course are:

1.Strengthen students’ knowledge of data structure

2.Enhance the skill of applying data structure to solve realproblems

CourseDescription

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

Instrumentsand Equipments

Computerwith C++ environment and ACM client

Serverwith ACM server

ExperimentReport

Notrequired

Assessment

Participation:20%

Correctness:80%

TeachingMaterials and Reference Books

Clifford A. Shaffer, “APractical Introduction to Data Structures and Algorithm Analysis(3rd edition)”, Publishing House of Electronics Industry(Chinese Publisher), 2023

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

NellDale, “C++ Data Structures (3rd edition)”, Jones and BartlettPublishers, Inc, 2003

Preparedby Whom and  When

PatrickP.K. Chan, 2019/4/14



DataStructure” ExperimentalTeaching Arrangements

No.

ExperimentItem

ClassHours

ContentSummary

Category

Requirements

Numberof Students Each Group

Instruments,Equipments and Software

1

List,Stack and Queue

4

3Questions: 2 basic and 1 difficult questions

Thequestions are required to use the technique of Link, Stack andQueue Data Structures

Demonstration

Elective

1

DesktopComputer for each student

-C++ environment

-AMC Platform client software


ACMPlatform Server


2

BinaryTree and Non-Binary Tree

4

3Questions: 2 basic and 1 difficult questions

Thequestions are required to use the technique of Binary Tree andNon-Binary Tree Data Structures

Demonstration

Elective

1

DesktopComputer for each student

-C++ environment

-AMC Platform client software


ACMPlatform Server


3

Sortingand Searching

4

3Questions: 2 basic and 1 difficult questions

Thequestions are required to use the technique of Link, Stack, Queue,Tree and also the Sorting and Searching algorithms

Demonstration

Elective

1

DesktopComputer for each student

-C++ environment

-AMC Platform client software


ACMPlatform Server


4

Indexingand Graph

4

3Questions: 2 basic and 1 difficult questions

Thequestions are required to use the technique of Link, Stack, Queue,Tree, Graph and also the indexing algorithms

Demonstration

Elective

1

DesktopComputer for each student

-C++ environment

-AMC Platform client software


ACMPlatform Server