项目的亮点

计算机科学辅修课程为所有专业的学生提供了发展写作算法解决问题的技能和理解计算机科学的基本概念的机会. 这门辅修课程包含了计算机科学领域的理论和实践元素, 以算法实现和可计算性为主要例子. 进一步, 本系的目标是用数字来表达和解释数学关系, 象征性的, and graphical points of view; reading and constructing mathematical proofs; analyzing various discrete and continuous probability models; and applying mathematics to other disciplines are directly addressed by this minor.

学生必须完成至少21个学分.

要求学习以下课程(15学时)

  • MA208 -离散数学
  • CS135计算机科学导论
  • CS235 -数据科学导论
  • CS308计算理论
  • CS337 -算法和数据结构

完成剩余的6个学分要求, 学生可以选择两门课程, 其中一个必须带有CS或IS前缀, 从以下:

  • CS300 -高级离散数学
  • CS342 -人工智能
  • IS221 -编程基础
  • IS321系统分析与设计
  • IS470 -商业智能和大数据
  • 数学逻辑

主修数据科学的数学专业学生可能不会辅修计算机科学. 请注意,其中一些课程需要满足先决条件. 详情请参阅课程描述.

计算机科学辅修必修课

CS135计算机科学导论 计算机科学课程学生在数学和科学方面所修的第一门计算机科学课程, 以及那些寻求计算机科学双学位项目的学生. 主题包括计算基础和算法解决问题, 数据类型, 控制结构, 基本图形, 面向对象的编程范例和应用程序. 介绍一种高级编程语言,如Python. 前提条件:MA110或同等学历 
CS235 -数据科学导论 cs135的延续. 重点分析算法, 计算数学, 以及高级面向对象编程(接口, 多重继承). 主题包括抽象数据类型(堆栈, 队列, 列表, 字符串, 树), 计算复杂度, 递归, 优化, 随机规划, 和蒙特卡罗模拟. 程序是用高级编程语言实现的,比如Python. 先决条件:CS135 
CS300 -高级离散数学 对与计算机科学家特别相关的离散数学主题的考察. 包括计算复杂度, 密码学, 离散型概率, 图, 树, 网络, 佩特里网, 布尔代数与组合电路, 数据表示, 以及指令集架构. 先决条件:MA208
CS308计算理论 一门强调形式语言的计算理论导论, 自动机, 和可计算性. 包括计算复杂度和np完整性. 先决条件:MA208.
CS337 -算法和数据结构 算法和数据结构的研究. 前提条件:CS235或得到导师的同意
CS342 -人工智能 人工智能理论与实践导论. 从启发式搜索技术中选择的主题区域, 知识表示, 符号推理, 模糊逻辑, 规划, 学习, 自然语言处理, 专家系统, 遗传规划, 智能代理, 群体智慧, 和神经网络. 前提条件:MA208和CS337,或得到导师的同意
IS221 -编程基础 本课程向学生介绍创建和实现典型的商业问题解决方案的过程,这些问题需要计算机编程技能和理解. 本课程的主要重点是帮助学生理解计算机程序设计的基本概念, 在使用Java编程语言的面向对象方法中强调设计而不是语法.
IS321系统分析与设计 系统开发和修改过程的高级研究. 重点介绍复杂系统需求建模的分析和设计策略和技术. 使用数据建模工具和面向对象的方法进行分析和设计. 强调与用户和用户系统进行有效沟通和集成的因素. 前提条件:IS221或得到导师的同意
IS470 -商业智能和大数据 对数据收集的各个方面的深入研究, 数据提取, 网络知识发现和电子商务智能等海量数据库. 数据挖掘是模式自动发现的过程, 变化, 大型数据库中的关联和异常. 本课程将介绍数据挖掘和知识发现的主要主题. 重点将放在算法和系统问题上, 以及挖掘在现实问题中的应用. 前提条件:IS270或得到教师的同意
MA208 -离散数学 介绍证明和解决组合问题的基本技术. 主题包括图、树、逻辑、应用组合学和数论. 前提条件:完成或同时注册MA140课程
数学逻辑 数学逻辑和元数学导论. 包括谓词演算, 证据理论, 正式的公理化理论, 一致性, 完整性, 和可判定性. 先决条件:MA208