项目的亮点

The 计算机科学小 offers students in all majors the opportunity to develop skills in writing algorithms to solve problems and to understand the fundamental concepts of computer science. This minor contains both theoretical and practical elements of the computer science field, with algorithm implementation 和可计算性 being prime examples. 进一步, the departmental goals of expressing and interpreting mathematical relationships from numeric, 象征性的, 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.

A student must complete a minimum of 21 credit hours.

The following courses are required (15 credit hours)

  • MA208 -离散数学
  • CS135 - Introduction to 计算机科学
  • CS235 - Introduction to 数据科学
  • CS308 -计算理论
  • CS337 - Algorithms and Data Structures

To complete the remaining 6 credit hour requirements, the student may choose two courses, one of which must bear a CS or IS prefix, 从以下:

  • CS300 - Advanced Discrete 数学
  • CS342 - Artificial Intelligence
  • IS221 - Programming Fundamentals
  • IS321 - Systems Analysis and Design
  • IS470 - Business Intelligence and Big Data
  • 数学逻辑

数学 majors with a 数据科学 emphasis may not earn a 计算机科学小. Note that some of these courses have prerequisites that need to be met. See course descriptions for details.

计算机科学小 Required 课程

CS135 - Introduction to 计算机科学 A first computer science course taken by students in mathematics and science, as well as those seeking the dual-degree program in computer science. Topics include fundamentals of computation and algorithmic problem-solving, 数据类型, 控制结构, 基本图形, the object-oriented programming paradigm and applications. Introduces a high-level programming language such as Python. Prerequisite: MA110 or equivalent 
CS235 - Introduction to 数据科学 cs135的延续. Emphasizes analysis of algorithms, 计算数学, and advanced object-oriented programming (interfaces, 多重继承). Topics include abstract 数据类型 (stacks, 队列, 列表, 字符串, 树), 计算复杂度, 递归, 优化, 随机规划, 和蒙特卡罗模拟. 项目 are implemented in a high-level programming language such as Python. 先决条件:CS135 
CS300 - Advanced Discrete 数学 An examination of discrete mathematics topics of particular relevance to computer scientists. Includes 计算复杂度, 密码学, 离散型概率, 图, 树, 网络, 佩特里网, Boolean algebra and combinatorial circuits, 数据表示, and instruction set architectures. 先决条件:MA208
CS308 -计算理论 An introduction to the theory of computation emphasizing formal languages, 自动机, 和可计算性. Includes 计算复杂度 and NP-完整性. 先决条件:MA208.
CS337 - Algorithms and Data Structures Study of algorithms and data structures. Prerequisite: CS235 or consent of instructor
CS342 -人工智能 Introduction to the theory and practice of artificial intelligence. Topic areas selected from heuristic search techniques, 知识表示, 符号推理, 模糊逻辑, 规划, 学习, 自然语言处理, 专家系统, 遗传规划, 智能代理, 群体智慧, 和神经网络. 先决条件:MA208 and CS337, or consent of instructor
IS221 - Programming Fundamentals This course introduces students to the process of creating and implementing typical solutions to business problems requiring computer programming skills and understanding. The main focus in this course will be to help the student understand the basic concepts of computer programming, emphasizing design over syntax in an Object Oriented approach using the Java programming language.
IS321 - Systems Analysis and Design Advanced study of systems development and modification processes. Emphasis on strategies and techniques of analysis and design for modeling complex system requirements. Use of data modeling tools and object-oriented approaches to analysis and design. Emphasis on factors for effective communication and integration with users and user systems. Prerequisite: IS221 or consent of instructor
IS470 - Business Intelligence and Big Data An in-depth study of various aspects of data collection, 数据提取, and knowledge discovery on the Web for e-business intelligence and other massive databases. Data mining is the process of automatic discovery of patterns, 变化, associations and anomalies in massive databases. This course will provide an introduction to the main topics in data mining and knowledge discovery. Emphasis will be placed on the algorithmic and systems issues, as well as application of mining in real-world problems. Prerequisite: IS270 or consent of instructor
MA208 -离散数学 Introduces basic techniques of proof and combinatorial problem solving. Topics include 图, 树, logic, applied combinatorics, and number theory. Prerequisite: completion of or concurrent enrollment in MA140
数学逻辑 An introduction to mathematical logic and metamathematics. 包括谓词演算, 证据理论, 正式的公理化理论, 一致性, 完整性, 和可判定性. 先决条件:MA208