课程详情
课程评价
spContent=我们生活在信息时代,作为信息的载体——数据,如何在计算机中被存储、处理?让国家教学名师耿国华教授带您走进《数据结构》课堂,探索数据组织和高效处理算法,为您你成为“数字艺术殿堂设计师”助力。 06年国家精品课程、11年国家精品资源共享课、17年国家精品在线开放课程、20年国家一流课程,十二五国家规划教材资源扫码移动学习,都是您的资源。
—— 课程团队
课程概述

我们生活的现实世界中所有物质都可以抽象为数字、文字、声音、图像和视频,这些数据存储在计算机中,构成了信息世界,经过处理后又服务于我们社会生活的方方面面。计算机科学是一种创造性思维活动,其教育必须面向设计。数据是表征客观事物的可记录可识别符号集合。数据是信息处理的核心基础。数据结构和算法是计算机科学的基石,贯穿了分析问题解决问题的计算思维。

数据结构作为学科的专业基础核心课程,对应于学科中问题求解的理论、抽象和设计的方法论,在学科知识体系中具有核心的重要位置。课程一般开设在二年级,应对前面学习的软件技术总结提高,为后续专业课程提供基础,培养基本数据结构分析能力和综合程序设计实现能力,体现着创造性思维的信息素质培养过程,是计算机科学与技术人才素质框架中的脊梁骨。它承上启下,贯通始终,对学生能力培养至关重要,受益终身。

数据结构及其处理算法是设计与实现系统软件和大型应用软件的重要基础,数据结构与算法课程是计算机专业重要的专业技术基础课程。该课程的内容对于培养学生的计算思维、系统分析与设计、算法设计与分析、程序设计与实现等学科基本能力非常重要。本课程系统地介绍了软件开发中常用的数据结构以及相应的 存储结构和操作算法,包括常用的查找技术、排序技术、递归技术等。

掌握数据结构中的基本概念、合理组织数据的基本方法、高效处理数据的 基本算法、常用的经典算法、通用的程序设计技术,以及面对实际问题时选择恰当数据结构并设计高效算法的能力,培养学生用计算思维分析问题的能力,提高学生 上机解决较大规模实际问题的能力,为进一步的软件开发打下坚实的基础。

1.课程体系

课程突出数据组织方法与实现技术构成,慕课约26个学时,由基本概念、基本结构(线性、树、图)和基本技术(查找、排序)三大部分组成。基本概念部分重点讲述数据结构定义、内容、方法、评价以及前续基础与课程要求,明确数据结构什么、学什么、怎么学数据结构。基本结构部分重点讲述线性结构、树、图的逻辑结构、存储结构及其加工处理基本算法。基本技术部分包括查找和排序两类经典技术,贯穿了参数传递、指针处理技术、数组应用、递归与队列等重要的程序设计技术;力求表现经典算法思路,为学习者继续展拓提供线索。M课视频每讲均附有小结,每章均有典型题例,便于总结提高。

2.教学团队

课程负责人和主讲人是国家教学名师耿国华教授,她主讲数据结构课程30余年,主持建设了《数据结构》国家精品课程与国家精品资源共享课程,主编数据结构教材4部,课程教学资源被我校和几十余所高校采用。课程团队成员均为从事数据结构课程教学的一线教师,教学经验丰富,能很好胜任线上辅导工作。

3.课程特点

数据结构的学习过程是进行复杂程序设计的训练过程。技能培养的重要程度不亚于知识传授。难点在于让学生理解、习惯、掌握构造思维算法方式。针对《数据结构》技术性与综合性较突出的特点,耿教授倡导实施了“指导—大运动量实践—反馈”教学法。通过作业练习、课堂练习、课程实习、课程设计实践过程,促进了学生逻辑抽象能力的培养。

4.课程定位

“数据结构与算法”是计算机学科的重要骨干基础课程,是本科教学的重中之重。作为计算机学科一个重要的分支,“数据结构与算法”课程涉及构筑计算机求解问题过程的两大基石:刻画实际问题中信息及其关系的数据结构和描述问题解决方案的逻辑抽象的算法。

5.资源特色

建设了支撑教学过程与自主学习两个面向的立体化教学资源,随书配备资源光盘、新形态教材、多媒体动画课件等资源支撑教学过程。

面向教学过程资源:与课程内容特点相适应的Flash多媒体课件。提供选件控制方式,便于教学内容重组。以动画展现算法,便于对抽象算法本质的理解。

面向自主学习扩展的教学资源:涵盖练习测试、同步训练、教学大纲、课堂视频、参考文献、相关题库等教学资源,促进学生线上线下主动学习,入门提高。

让我们一起进入数据结构课程的学习,共同提高计算思维能力。


图1 “数据结构与算法”知识体系图

2“数据结构与算法”与其他课程的关系

授课目标

目标1掌握非数值信息处理中,数据元素的基本逻辑结构和存储结构。提升学生抽象思维能力,能将现实世界中的问题,抽象成计算机能够表示的问题,并进行求解。

目标2掌握数据不同组织形式的优缺点以及算法基本评价指标,能针对同一问题,在各类数据组织和处理方法中,选取最适合的方法。培养学生分析问题、解决问题的能力。

目标3掌握常用数据处理基本算法,能根据实际问题,选用合适数据结构,编写高效算法,并调试实现。

课程大纲
预备知识

 需要具备一定的C语言程序设计基础。

参考资料
  1. 耿国华等,《数据结构-C语言描述(第2版)》,高等教育出版社,2021.6
  2. 数据结构——C语言描述(第三版),西安电子科技大学出版社,2020.8
  3. 严蔚敏等,《数据结构(C语言版)(第2版)》,清华大学出版社,2015.2

辅助学习资源:

国家精品资源课共享网址:http://www.icourses.cn/sCourse/course_4246.html