程序设计实习(实验班)2024

时间地点:
每周三 3 - 4节(10:10 - 12:00),单周周五 7 - 8节(15:10 - 17:00),燕园三教303 燕园三教304
上机课:每周六15:30 - 17:30(从3月9日开始),地点在理科⼀号楼1235,请使用编号在41-187,190-213的机器

主讲教师: 姜少峰 (shaofeng.jiang at pku.edu.cn)

助教: 冯施源 (2200013060 at stu.pku.edu.cn),吴天意 (wuty at stu.pku.edu.cn)

课下答疑交流渠道: 上机课、微信群(群二维码见第一次课的slides的最后一页;若二维码过期可以联系助教进群、在群同学邀请进群)

快速跳转:课程信息 课程材料 作业


课程简介

本课程为实验班课程,主要面向已经具备良好的编程基础的同学。本课从程序设计的科学性和工程性两大主线切入。

本课的风格偏向于以某种逻辑来“展示”一众前沿的主题,而不是传统的教授知识点为主。

课程要求: 本课程需要对C++程序设计较为熟悉,具有很好的C++编程和解题能力。数学上,需要具备基本的概率论、单元函数微积分和基本的线性代数知识。

成果评估:

学术道德: 鼓励讨论,但绝不允许抄袭等违反学术道德的行为。例如,几个同学可以通过讨论得出相似的解法,但是最后每个同学必须独立完成作业的写作/程序的编写。


课程材料

课堂讲义幻灯片将在课前更新。

日期 讲义
2月21日 课程介绍 & 绪论随机算法概述
2月23日 随机算法概述 (cont.)
2月28日 随机算法概述 (cont.)哈希方法
3月6日 哈希方法 (cont.)
3月8日 距离度量
3月13日 距离度量 (cont.); 距离度量:欧氏空间
3月20日 距离度量:欧氏空间 (cont.)
3月22日 距离度量:欧氏空间 (cont.)
3月27日 距离度量:欧氏空间 (cont.); 面向对象:简介
4月3日 面向对象:类与对象
4月7日 (因放假调整) 面向对象:类与对象 (cont.); 重载
4月10日 面向对象:继承
4月17日 面向对象:继承 (cont.); 面向对象:泛型
4月19日 面向对象:泛型; 面向对象:设计模式选讲
4月24日 降维:JL方法
5月1日(放假) ---
5月3日(放假) ---
5月8日 降维:JL方法 (cont.)
5月15日 降维:PCA方法
5月17日 降维:PCA方法 (cont.)
5月22日 压缩感知、LP
5月29日
5月31日
6月5日
6月12日 期末考试(上机)

作业

编程作业请提交到openjudge上,实验报告作业请提交电子版到https://course.pku.edu.cn(如只有纸质版本,请拍照/扫描提交图片并确保清晰度)。

大作业 (6月1日截止),辅助测试数据下载
作业一(实验报告) (3月13日截止)
作业二(编程) (3月13日截止)
作业三(编程) (3月15日截止)
作业四(编程) (3月15日截止)
作业五(编程) (3月15日截止)
作业六(编程) (3月20日截止)
作业七(编程) (3月27日截止)
作业八(编程) (3月29日截止)
作业九(编程) (4月3日截止)
作业十(编程) (4月10日截止)
作业十一(编程) (4月12日截止)
作业十二(编程) (4月12日截止)
作业十三(编程) (4月17日截止)
作业十四(编程) (4月17日截止)
作业十五(实验报告) (5月15日截止)
作业十六(编程) (5月29日截止)
作业十七(编程) (6月5日截止)