Data Structures 2024
外观
时间与地点
- 时间:1-16 周,周日 18:30 起
- 地点:
- B 班及工科:软件学院一楼 5-104 机房(一楼)
- A 班:软件学院一楼 5-103 机房(一楼)
分数构成
ACM 班
- 期末考试 50%
- 小作业 10%
- 机考 10%
- vector 4%
- priority queue 5%
- map 6%
- 火车票管理系统 15%
- B Plus Tree 7%
- 管理系统 8%
工科
- 期末考试 40%
- 小作业 10%
- 机考 10%
- vector 5%
- list 5%
- priority queue 7%
- linked hashmap 8%
- map/B Plus Tree 15%
时间表
第 1 周
- 助教介绍、课程安排、作业安排介绍(文件:2024数据结构上机课介绍.pptx)
- 发布 vector 大作业(ACM,文件:STLite介绍 (2024).pptx)
- 发布 OOP 作业(工科)
- 环境配置可参考:程序设计环境配置文档
- ACM Class Online Judge: https://acm.sjtu.edu.cn/OnlineJudge
第 2 周
- A 班:进阶字符串算法(文件:Manacher与后缀数据结构(2024).pptx 文件:扩展KMP与序列自动机(2024).pptx)
- Manacher 算法与后缀数据结构
- 扩展 KMP(Z函数)与序列自动机
- B 班:基础字符串算法(文件:KMP与Hash(2024).pptx)
- KMP 算法
- 字符串哈希
- 第一次小作业(2024-03-03 18:30–2024-03-17 23:59)
第 3 周
- 发布 priority_queue 大作业(ACM,文件:Priority queue(2024).pdf)
- 第一次机考
第 4 周
- A 班:进阶 DP 优化(文件:单调栈 单调队列 栈模拟递归(2024).pptx)
- 斜率优化
- wqs 二分
- B 班:单调数据结构(文件:斜率优化 wqs二分(2024).pdf)
- 单调栈
- 单调队列
- 用栈模拟递归
- 第二次小作业(2024-03-17 18:30–2024-03-31 23:59)
第 5 周
- 第二次机考
- 发布 map 大作业(ACM,文件:Map发布(2024).pptx)
第 6 周
- A 班:进阶区间数据结构(文件:分块&根号分治&莫队(2024).pptx)
- 分块
- 根号分治
- 莫队
- B 班:区间数据结构(文件:树状数组与ST表(2024).pptx)
- 树状数组
- ST 表
- 第三次小作业(2024-03-31 20:00–2024-04-14 18:30)
第 7 周
- 清明放假
第 8 周
- A 班:树链剖分(文件:树剖(2024).pdf)
- B 班:LCA(文件:Lca&trie(2024).pptx)
- 发布 B+ 树大作业(ACM,文件:BPT发布(2024).pptx,文件:Bpt-bonus(2024).pdf)
第 9 周
第 10 周
- A 班:线段树进阶内容
- 线段树合并
- 可持久化线段树
- 树套树
- B 班:线段树基础内容
第 11 周
- 五一放假
第 12 周
第 13 周
- A 班:K-D Tree
- B 班:并查集与生成树
第 14 周
- A 班:进阶图论算法
- 较复杂的图论与生成树算法
- B 班:基础图论算法
- 最短路算法
- Tarjan
第 15 周
第 16 周
- 期末笔试复习
大作业
STLite
- ACM: https://github.com/ACMClassCourse-2023/STLite-ACM-2024
- 工科: https://github.com/ACMClassCourse-2023/STLite-Honor-2024
除非有极其特殊的原因,否则不接受任何在截止后的提交,所有代码均以截止前的提交为准!
vector
- ACM: 2024-02-25(第 1 周周日)~ 2024-03-03(第 2 周周日)
- 工科: 2024-03-03(第 2 周周日)~ 2024-03-24(第 5 周周日)
list
- ACM: 寒假作业
- 工科: 2024-03-24(第 5 周周日)~ 2024-04-07(第 7 周周日)
priority_queue
- ACM: 2024-03-10(第 3 周周日)~ 2024-03-24(第 5 周周日)
- 工科: 2024-04-07(第 7 周周日)~ 2024-04-21(第 9 周周日)
linked hashmap
- ACM: 无
- 工科: 2024-04-21(第 9 周周日)~ 2024-05-12(第 12 周周日)
map
- ACM: 2024-03-24(第 5 周周日)~ 2024-04-14(第 8 周周日)
- 工科: 2024-05-12(第 12 周周日)~ 2024-06-02(第 15 周周日)
火车票 (ACM)
- 仓库: https://github.com/ACMClassCourse-2023/Ticket-System-2024
- BPlusTree 数据库: 2024-04-14(第 8 周周日)~ 2024-05-12(第 12 周周日)
- 后段逻辑: 2024-05-12(第 12 周周日)~ 2024-06-02(第 15 周周日)
助教
Name | |
---|---|
杨晋晟 | modem514@sjtu.edu.cn |
潘屹 | conlesspan@sjtu.edu.cn |
王冠杰 | irfnfnkemed@sjtu.edu.cn |
马逸飞 | shenjidf11@sjtu.edu.cn |
王鲲鹏 | kunpengwang@sjtu.edu.cn |
张世奇 | zsq259@sjtu.edu.cn |
蒋松霖 | clorf6@sjtu.edu.cn |
陈一星 | polaris_dane@sjtu.edu.cn |
陈圣尧 | sjtu15060022751@sjtu.edu.cn |
邵嘉南 | sjtu13362955623@sjtu.edu.cn |
林一凡 | sjtu15088284174@sjtu.edu.cn |
房诗涵 | fang-account@sjtu.edu.cn |
金嘉禾 | zizi0123@sjtu.edu.cn |
杨茗焱 | yangmingyan@sjtu.edu.cn |
李心瑶 | lxy4488@sjtu.edu.cn |
何彦衡 | henryhe_sjtu@sjtu.edu.cn |