数据结构与算法
分享
课程详情
课程评价
spContent=数据结构是软件设计的重要理论和实践基础,数据结构设计和算法设计是软件系统设计的基础和核心技术。因此,“数据结构与算法”是计算机类专业本科必修的核心课程,是进行程序设计训练、培养系统软件设计能力不可或缺的重要基础课程,在计算机学科本科的培养体系中具有非常重要的地位。 Java语言是目前功能最强、应用最广泛的一种完全面向对象程序设计语言,具有成熟而严密的语法体系、跨平台特点和强大的应用系统设计能力。今日Java应用无处不在,其重要性无庸置疑。Java语言提供类的封装、继承、多态和抽象特性,提供数组和对象引用模型,为类、接口和函数提供泛型参数,提供递归函数等,这些不仅具备表达数据结构和算法的基本要素,而且能使算法更简明、更直接,性能更好。因此,本课程采用Java语言描述数据结构和实现算法,是数据结构课程教学改革的必然发展趋势,完全符合本科培养目标的要求。
—— 课程团队
课程概述

“数据结构与算法”是计算机类专业本科必修的核心课程,是进行程序设计训练、培养系统软件设计能力不可或缺的重要基础课程。本课程的任务是研究数据的逻辑结构、存储结构以及对数据操作的算法设计。要求学生掌握数据结构设计和算法设计的基础理论和技术方法,培养算法设计能力。

本课程全面系统地介绍数据结构的基础理论和算法设计方法,采用Java语言以面向对象方法设计并实现线性表、树、图等数据结构以及查找和排序算法。

 “数据结构与算法”是理论和实践紧密结合的课程,不仅要深刻理解基础理论,还要在实践中通过训练掌握算法设计的方法和技能,逐步积累经验,培养系统软件设计能力。

本课程共72学时,其中讲课56学时,实验16学时(8次实验)。讲课内容和学时分配详见以下“课程大纲”;课程考核方式及要求见“设置”-“评分标准”。

 本课程内容多,概念抽象,理论深奥,链式存储结构和递归算法设计学习难度大,较难理解和掌握;理解软件系统设计的本质,培养算法设计能力,需要一段时间,不能立竿见影。

授课目标

课程目标1理解和掌握数据结构设计的基础理论和技术方法,包括线性表、树、图等数据结构的逻辑结构、存储结构、对数据操作的算法设计及应用。掌握运行程序的基本技能,培养实践动手能力,逐步积累经验,解决实际应用问题。采用面向对象思想设计结构化、模块化、可复用的软件系统。

课程目标2掌握查找和排序等算法设计方法及其应用。培养算法设计与分析能力,培养独立分析问题和解决问题的能力,培养刻苦钻研的精神和严谨的治学作风。

课程大纲
预备知识

先修课程C语言程序设计,JAVA语言程序设计,离散数学。

证书要求

为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。

 

电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 https://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。

 

完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。

 

认证证书申请注意事项:

1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。

2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。


参考资料

课程教材:《数据结构与算法(Java版)(第5版)》,叶核亚编著,2020年出版,电子工业出版社。“十二五”普通高等教育国家级规划教材(本科),“十三五”江苏省高等学校重点教材(本科)。

《数据结构与算法(Java版)(第5版)习题解答》,叶核亚编著,2021年,校内讲义。