课程简介

通过这门课程的学习,学生将了解计算理论的基础知识,掌握有效计算的概念。本课程的教学内容包括:形式语言与自动机理论、可计算性理论、计算复杂性理论等三个部分。这些内容分别回答下列问题:(1)有哪些计算装置?它们的能力如何?(2)什么是计算?哪些问题是(不)可计算的?(3)什么是有效计算?哪些问题是(不)可有效计算的?通过这门课程的学习,学生将了解计算理论的基础知识,掌握有效计算的概念。

课程大纲

第一章: 有穷自动机


第二: 正则语言


第三:上下文无关文法


第四:下推自动机


第五: 图灵机


第六:(不)可计算性


第七: 计算复杂性


第八: NP完全理论


课程说明

本课程的教学方式包括教学录像片段(每段录像8-20分钟,内含1-2个测验问题),教学录像之外的书面作业,以及(必须参加的)期末考试。


本课程课程的总长度为8周,每周教学录像长度大约120分钟。需要的预备知识是离散数学(集合论、数理逻辑、图论等)的基本概念


参考资料

拓展阅读

其他

主讲教师

刘田   副教授

北京大学信息学院计算机系副教授,主要研究方向为算法分析与计算复杂性理论。主持过两项国家自然科学基金项目以及多项其他研究课题,发表了多篇论文和译著。长期主讲“集合论与图论”、“理论计算机科学基础”等课程,2006年和2013年先后两次获得了北京大学教学优秀奖。

相关课程推荐

  • 正在进行
    程序设计实习
    《程序设计实习》课程是北京大学的本科生主干基础课程。本科生程序设计类基础课程体系包含了四门课,按修课顺序分别为:计算概论、程序设计实习、数据结构与算法、算法分析与设计。
  • 正在进行
    计算机辅助翻译原理与实践
    本课程适用于翻译硕士专业研究生、外语专业高年级本科生、翻译工作者以及外语爱好者等。现代语言服务行业要求从业人员必须具有利用计算机及网络来使用各类技术辅助工具帮助其工作的能力,而不是仅仅学会几款狭义的计算机辅助翻译软件。
  • 即将开始
    架构设计
    本课程介绍软件架构分析和设计过程和步骤、视图和文档、软件架构应用与常用的架构模式/策略/原则等诸多架构实际问题,透视软件架构是如何设计和实现的整个流程, 并且介绍应该如何应用系统架构设计为后期的详细设计和应用开发提供指导

恭喜,报名成功

进入学习中心

恭喜,报名成功

确定

请进入开课界面预览

确定

X

请去您的邮箱验证

还没收到验证邮件?

1. 试试去广告邮件、垃圾邮件目录看看

2. 再次发送验证邮件

对不起,班次容量已满

请报名下一班次

知道了~!

对不起,您没有操作权限

知道了~!