数据结构与算法
分享
课程详情
课程评价
spContent=本课程以微课视频的形式进行讲解,希望你利用零碎时间完成视频观看和测试;通过算法演示理解数据结构的基本操作;通过代码实现视频了解实现时的细节;通过每种数据结构的应用视频理解该数据结构的应用场合;通过单元测试进行概念原理算法检验;通过在线判题系统检验你的编码动手能力,希望你有所收获。
—— 课程团队
课程概述

     

       数据结构与算法课程是计算机大类相关专业的一门重要专业基础课,它的核心位置毋庸置疑,既是操作系统、软件工程、数据库概论、编译技术等课程的基础,同时也是从事计算机相关工作必须掌握的专业基础素养。

本课程旨在讲解实用的数据结构与算法,包括线性表、栈和队列、树和二叉树、图等基本数据结构;AVL树、Merkle树、Trie树等复杂数据结构;以及检索和排序等重要操作算法。让大家体会数据结构在多个领域的应用,例如Linux中用到的双循环链表数据结构,编译原理中的表达式计算、区块链中用到的Merkle树、人工智能词汇切分中用到的Trie树,从而感受数据结构的博大精深和无限魅力。

通过本课程的学习,使学习者能够针对具体问题选择合适的数据结构,以合理地组织数据、有效地存储和处理数据,以锻炼数据抽象能力;使学习者能够将数据结构和应用付诸编程实践,正确地设计、编制高效算法,并对算法进行分析和评价,以锻炼良好的程序设计开发技能;使学习者能够应用工程知识和专业背景知识分析复杂工程问题,进行复杂程序设计的训练,解决工程实践问题,以锻炼学习者的工程实践能力;

本课程在每章开头视频,通过两个关键词进行章节主要内容概览。课程视频侧重理论和实践紧密结合,按照基本结构操作-算法讲解与实现-数据结构基本应用-应用扩展实践的路线讲解,不但锻炼你的抽象思维能力,更侧重动手实践能力的培养,注重基本数据结构的算法设计与实现以及它们的应用场景,在高度抽象和高度具体之间搭起一座桥梁。200多个视频片段有助于你自主地碎片化学习;CodeByCode视频直接在开发环境中讲解代码,使你“所见即所得”,减少起步的挫败感、增加自信;单元测试包含了大量的考研真题,使你在练习中得以掌握提高。

授课目标

课程目标1. 掌握数据结构和算法设计基础知识,理解计算机内部数据对象的表示和特性,理解线性表、树、图等常见数据逻辑结构、存储结构表示及其差异,能针对具体问题建立模型并求解。


课程目标2. 掌握常见数据结构基本操作和算法;掌握排序、查找等算法原理及实现。掌握算法时间复杂度、空间复杂度分析方法,能分析算法功能,能评价算法性能。能针对计算机领域工程问题,选用或设计满足功能和性能要求的数据模型和算法。


课程目标3. 能够对具体的问题进行分析,构建解决问题的数据模型,设计实验方案;能设计出结构清晰、正确易读、性能较优的算法,能通过测试发现算法的缺陷并提出改进方案。


课程目标4. 能综合运用所学的数据结构知识、算法分析与设计知识,通过团队合作解决较复杂的实际工程问题。

课程大纲
预备知识

1、C语言程序设计

2、请注意各个章节测验和期末测试的时间安排,做好时间计划,以免错过考试时间。




证书要求

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

 

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

 

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

 

认证证书申请注意事项:

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

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


参考资料

[1] 张瑞霞、张敬伟 编著. 数据结构与算法[M]. 北京:清华大学出版社,2018.06

[2] 张瑞霞、唐麟 编著. 数据结构与算法实验教程[M]. 北京:清华大学出版社,2018.06

[3] 周娅编著. 数据结构. 重庆大学出版社,2009.02


[4]在PAT(Programming Ability Test)的配套练习网站进行编程练习题。你可以自己注册帐户,随时进行练习,并不限于发布练习的时段。需要在“个人中心”输入邀请码,应邀做题。本学期的邀请码为:6f26f38adae93821







常见问题

1、章节测试如何计算得分?

    答:每章都有章节测试部分,这部分都给了学员两次测试机会,取最高分作为本测试的得分。9章章节测试的总分作为满分,因此学生这部分得分是按照章节总分进行比例折算后的结果。

2、每章中的补充内容作为考试要求吗?

    答:补充内容不作为考试内容,这部分可以根据自己的兴趣和能力选择性学习。