数据结构与算法分析(H) (唐博, 沈昀)CS2172022秋 2021秋  
2022秋 2021秋
7.0(1人评价)
  • 课程难度
    困难
  • 作业多少
    中等
  • 给分好坏
    杀手
  • 收获大小
    很多
选课类别:专业任务 教学语言:英文
课程类别:专业基础课 开课单位:计算机科学与工程系
课程层次:本科 获得学分:3.0
课程主页:暂无(如果你知道,请点右上角“编辑课程信息”添加!)
课程简介(教工部数据)
该课程主要介绍计算机科学中常用数据结构(比如基础数据结构和高级数据结构)、算法分析方法以及算法设计思想。从数据结构角度而言,本课程主要介绍数组,链表,栈,队列,字符串,树,和图。从算法分析角度而言,本课程涵盖算法时间复杂度分析,空间复杂度分析,以及算法正确性证明等。从算法设计思想角度而言,该课程将介绍典型的算法设计思想,如二分法,贪心发,分而治之法,随机算法等。本课程的目的是让每一位学生掌握数据结构以及基本算法设计思想和分析方法,学会和掌握数据结构和算法设计知识。


?In this course, we will study the data structures (fundamental andadvanced data structures), algorithms analysis and algorithm design methodology(generic and specific algorithm design techniques). Such knowledge is at thecore of computer science, and allows us to write faster programs, especiallyones whose running time has attractive worst-case bounds. Techniques foranalyzing the performance of algorithms, designing beautiful/efficientalgorithm will also be discussed in detail. Tentative topics to be coveredinclude array, linked list, queue, stack, searching in ordered lists, sorting,priority queues, binary search trees, graph algorithms, advanced computationaltheory, advanced data structures (e,g,. kd-tree, bootstrapping, priority searchtree, and range tree) and so on.
点评写点评
user avatar   咕桃     2022秋
  • 难度:困难
  • 作业:中等
  • 给分:杀手
  • 收获:很多

唐老师的风格算是很有特点的,授课内容讲的也算足够清晰,理解课程内容听课就够了。

Lab作业共十次占20分,还有一次bonus Lab 2分(仅能补Lab作业分)。作业通过ACM Online Judge布置,和java A的OJ不同,只要有一个测试点过不了就一分没有,并且不展示报错信息,在debug层面难度就更上一层楼了(不过可以找温柔善良的sy姐姐帮忙还是挺好的awa)。Lab题对于没有竞赛基础的同学,有些题还是颇有难度,例如本学期比较恶心的两道题是块状链表和平衡树,实际上写不出来也不必死磕,bonus Lab的难度都很低(至少这学期是这样),可以抵消3,4道前面太难的题,何乐而不为呢?作为参考,我有微弱的算法基础,每次Lab死磕做完的耗时大概在4~30小时不等,平均用时12h附近?

考试和上课所讲直接重合的部分有,但不是全部,会出一些比较伤脑筋的算法设计题,现场很难想出最优解,想不出最优解唐老师就会给你这道题打个亲切的六折,还是挺痛的。

考试复习的建议就是看看课件,长期有精力的话可以看看算法导论对应章节的练习题,唐老师似乎很喜欢这本书,上面的题解也还是挺巧妙,但也挺伤脑筋的。

给分不予评价,人不行不能怪路不平。毕竟是计算机系必经之课,也是很基础很重要的内容,学到的东西的重要性比成绩要重要多了。

H班最后布置了一个作业,是提交一篇FOCs上负权边单源最短路算法前沿论文的阅读报告,读懂很有难度,费了不少功夫,收获很大但伤害也很大(


teacher avatar

唐博

计算机科学与工程系

教师主页

teacher avatar

沈昀

暂无教师主页

其他老师的「数据结构与算法分析(H)」课

唐博老师的其他课

沈昀老师的其他课