“2017级--学期安排 (第二学期)”的版本间的差异

来自问题求解
跳转至: 导航搜索
推荐课外阅读材料: +CM
Whf讨论 | 贡献
推荐课外阅读材料
第28行: 第28行:
  
 
== 推荐课外阅读材料 ==
 
== 推荐课外阅读材料 ==
* Kenneth H. Rosen: [[Media:Discrete_Mathematics_and_Its_Applications_(7th_Edition).pdf ‎| Discrete Mathematics and Its Applications]], 7th ed. McGraw-Hill, 2011
+
* Kenneth H. Rosen: [[Media:Discrete_Mathematics_and_Its_Applications_(7th_Edition).pdf ‎| Discrete Mathematics and Its Applications]], 7th Edition. McGraw-Hill, 2011
  
* Donald E. Knuth: [[Media:The_Art_of_Computer_Programmin_Volume4A_Combinatorial_Algorithms.pdf | The Art of Computer Programming Vol4A: Combinatorial Algorithms Part 1]]. First Edition, 2011
+
* Donald E. Knuth: [[Media:The_Art_of_Computer_Programmin_Volume4A_Combinatorial_Algorithms.pdf | The Art of Computer Programming Vol4A: Combinatorial Algorithms Part 1]], 2011
  
* Ronald L. Graham, Donald E. Knuth, Oren Patashnik: [[Media: Concrete_Mathematics_-_R._Graham,_D._Knuth,_O._Patashnik.pdf | Concrete Mathematics. R. Graham, D. Knuth, O. Patashnik.pdf]]
+
* Ronald L. Graham, Donald E. Knuth, Oren Patashnik: [[Media: Concrete_Mathematics_-_R._Graham,_D._Knuth,_O._Patashnik.pdf | Concrete Mathematics: A Foundation for Computer Science.pdf]], 2nd Edition, 1994.
  
 
更多阅读材料将随课堂进度添加。
 
更多阅读材料将随课堂进度添加。

2018年4月2日 (一) 19:45的版本

基本要求

  • 理解数据抽象,理解并能够应用常用的数据结构
  • 掌握重要算法设计策略以及算法分析的基本方法
  • 理解并能够应用支持上述内容的离散数学工具与方法
  • 程序设计能力

考核方法

所有形式的考核,均不准抄袭。

  • 作业 (10%)
  • OJ (10%)
  • Open topics (10%)
    • 成绩: A (10), B (8), C (6) 三档
    • 每人至少做两次
    • 少做一次扣 1 分
    • 不做计 0 分
  • 期末: (70%)
    • 机试 (20%)
    • 笔试 (50%)

指定教材

推荐课外阅读材料

更多阅读材料将随课堂进度添加。

学习周历

日期 论题 学习目的 阅读材料 引导要点 书面作业 Open Topics
2018-03-07
  • 理解并能够区分算法错误与程序错误
  • 理解算法正确性的概念及其证明方法
  • DH第5章
  • 算法正确性证明与一般数学定理证明的异同
  • DH 第5章练习 6, 9, 10, 12
  • 证明 Euclid (欧几里德) 算法的部分正确性
  • Insertion Sort
  1. 刘恩萌
  2. 姜勇刚
  3. 张天昀
  • Cyclic Hanoi
  1. 李凯旭
  2. 郑奘巍
  3. 董杨静

2018-03-14

  • 理解算法的时间复杂性的概念与渐近表示方式
  • DH第6章
  • TC 2.1节, 2.2节, 3.1节
  • 从无限与有限的角度正确理解算法复杂度
  • DH 第6章练习 1, 8, 10, 13, 18
  • Algorithmic Gap
  1. 王腾
  2. 李顶为
  3. 肖江
  • Asymptotic Notations
  1. 马常风
  2. 黄秉焜
  3. 吕云哲

2018-03-21

  • 掌握在算法分析中常用的计数原理与方法
  • CS第1章
  • 为什么算法分析中需要计数
  • CS 1.1 节 13
  • CS 1.2 节 5, 15
  • CS 1.5 节 4, 12, 14
  • The twelvefold way (1)
  1. 高天朗
  2. 谢逸
  3. 何伟
  • The twelvefold way (2)
  1. 张廷昊
  2. 匡舒磊
  3. 殷天润

2018-03-28

  • 掌握利用分治法设计算法的思路
  • 深入理解递归在算法设计中的作用
  • TC第4章
  • 策略在计算机算法设计中的意义
  • TC第4.1节练习5
  • TC第4.3节练习3
  • TC第4.4节练习2
  • TC第4.5节练习3
  • TC第4章问题4
  • 证明 The Master Theorem
  1. 兰兆炜
  2. 邱凯 (改次)
  3. 吕云哲
  • 介绍 Akra–Bazzi Method
  1. 李博文
  2. 何润雨 (改次)
  3. 刘寒

2018-04-04

  • 2-5: 递归及其数学基础
  • 进一步理解递归的数学基础
  • 更深入地掌握递归算法的分析方法
  • CS第4章
  • 如何解递归式
  • CS第4.1节问题 16, 17
  • CS第4.2节问题 8, 11
  • CS第4.3节问题 9
  • CS第4.4节问题 1, 6
  • CS第4.5节问题 8, 9, 10

2018-03-xx

  • 2-2: 算法方法 (待定)
  • 通过具体示例了解算法设计的基本策略
  • DH第4章
  • 理解复杂算法背后的简单原理
  • 必做: DH 第4章练习 2、8、11、12、14
  • 选做: DH 第4章练习 9 (可执行代码)、13