Course

CMSC 103  Great Ideas in Computer Science

Professor

Rebecca Thomas

CRN

16289

 

Schedule

Tu Th          2:30  -3:50 pm    OLINLC 115

Wed (Lab)   1:30  -3:30 pm                  ALBEE 100     

Distribution

OLD: E/Q

NEW: Math and Computing

Cross-listed: Science, Technology & Society

This course will examine several fundamental ideas from computer science, beginning with the binary representation of data (numbers, characters, images) and manipulation of these data.  We will study some of the big ideas that enable the current sophistication of computing, including the von Neumann stored-program architecture, the use of automatic translators for programming languages, and the utility of switching among multiple levels of abstraction.  We will study the basics of programming, and the course will include some simple programming assignments.  By the end of the course, we will have enough basic understanding to explore some of the technologies that underlie the internet. Prerequisite: Eligibility for Q courses.  On-line

 

Course

CMSC 131   Cognitive Science

Professor

Sven Anderson

CRN

16290

 

Schedule

Mon Wed    1:30  -2:50 pm     OLINLC 115

Fr                 9:50  - 11:50 am                  HDR 101A

Distribution

OLD: E/G

NEW: SSCI

Cross-listed: Science, Technology & Society

How do brains make minds?  Can computers think?  Is my dog conscious?  Cognitive science assumes that the brain is some sort of computational engine, and, beginning with that premise, attempts to find answers to such questions.  This course will be taught by faculty from biology, computer science, linguistics, philosophy, and psychology, who will combine their different approaches to explore how humans and other intelligent systems feel, perceive, reason, plan, and act.  In particular, the course will focus on the fundamental importance of language, signaling, and representation at many levels, from the neural to the organismal.  Laboratories will provide students with hands-on experience analyzing neural and behavioral data as well as with computational modeling.  Prerequisites: pre-calculus or its equivalent and a willingness to engage a broad variety of ideas and approaches from the natural, mathematical, and social sciences.  On-line

 

Course

CMSC 141   Computer Science I

Professor

Robert McGrail

CRN

16291

 

Schedule

Mon Fr           10:30  - 11:50 am   HEG 102

Wed (Lab A) 9:50  - 11:50 am   ALBEE 100 or             Th (Lab B)    9:50  - 11:50 am    ALBEE 100               

Distribution

OLD: E/G/Q

NEW: Math and Computing

This course introduces the notion of a computational process as well as the idea of a program as a director of such processes. The study of problem-solving techniques and algorithm development prepares students to apply the syntax and structure of a programming language to a variety of problem statements. The course includes regular programming assignments as well as a programming project. Prerequisite: eligibility for Q courses.  On-line

 

Course

CMSC 142   Computer Science II: Structures, Algorithms and Design

Professor

Brandeis Hill

CRN

16292

 

Schedule

Tu Th          9:00  - 10:20 am ALBEE 106 

Th   (Lab) 1:30  -     3:30 pm ALBEE 100

Distribution

OLD: E/G/Q

NEW: Math and Computing

This course elevates student programming and problem-solving skills via a thorough introduction to data abstraction and the design of efficient data structures and associated algorithms.  Numerous problems drawn from a broad variety of fields (e.g., artificial intelligence, genetics, simulation, languages, and cryptography) are used to motivate the study of new data types and algorithms.  Students will learn to implement numerous important structures, including records, queues, lists, and trees.  Essential algorithms for searching and sorting these structures are also implemented and analyzed. Prerequisites: Computer Science 141 or its equivalent and eligibility for Q courses.  On-line

 

Course

CMSC 301  Algorithms

Professor

Rebecca Thomas

CRN

16293

 

Schedule

Tu Th      10:30  - 11:50 am   OLIN 302

Distribution

OLD: E/Q

NEW: Math and Computing

The course discusses design and analysis of correct and efficient computer algorithms. Topics include sorting, greedy algorithms, divide-and-conquer algorithms, dynamic programming algorithms, and graph algorithms. Advanced topics in algorithms may be selected from specialized areas of the mathematical and empirical sciences.

Prerequisites: Computer Science 142 and Mathematics 231/235On-line

 

Course

CMSC 321 Databases: Theory & Practice

Professor

Robert McGrail

CRN

16294

 

Schedule

Mon Fr   9:00  - 10:20 am    ALBEE 106

Distribution

OLD: E/Q

NEW: Math and Computing

An introduction to the design, implementation, and uses of databases. Topics include database design, database models, integrity, concurrency, security, and database query languages.

Prerequisite: Computer Science 142   On-line

 

Course

CMSC 323   Computer Graphics

Professor

Melvin Chen

CRN

16295

 

Schedule

Mon Wed   3:00  -4:20 pm      ALBEE 106

Distribution

OLD: E/Q

NEW: Math and Computing

Computer graphics has become ubiquitous in today’s society, from magazine ads to movies to video games.  In this course we introduce and explore the basic algorithms used to create and manipulate two and three dimensional graphical objects.  Among the topics that will be covered are coordinate transformations, projection, hidden surfaces, shading, ray tracing, and texture mapping.  A strong mathematical and programming background is necessary.

Prerequisites: Math 242 or 331, CMSC 142, and permission of instructor.