COMPUTER SCIENCE
CRN |
12316 |
Distribution |
E |
Course No. |
CMSC 103 Q course |
||
Title |
Great Ideas in Computer Science (and How They Make the Internet Work) |
||
Professor |
Rebecca Thomas |
||
Schedule |
Tu Th 10:00 am - 11:20 am HEG 300 |
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
CRN |
12178 |
Distribution |
E/G |
Course No. |
CMSC 141 Q course |
||
Title |
Computer Science I |
||
Professor |
Rebecca Thomas |
||
Schedule |
Tu Th 1:30 pm - 2:50 pm HDR 101A |
This course will introduce 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 will prepare students to apply the syntax and structure of a programming language to a variety of problem statements. The course will include regular programming assignments as well as a programming project.
Prerequisite: Eligibility for Q courses.
CRN |
12179 |
Distribution |
E/G |
Course No. |
CMSC 142 Q course |
||
Title |
Computer Science II |
||
Professor |
Robert McGrail |
||
Schedule |
Tu Th 8:30 am - 9:50 am HDR 101A |
This course is a continuation of Computer Science 141. Elementary data structures, such as lists, records, and trees, will be discussed, as will the essentials of sorting algorithms and algorithm analysis. The inclusion of other topics such as error handling and other control features will be subject to instructor whim.
Prerequisite: Computer Science 141 or its equivalent.
Corequisite: Mathematics 111.
CRN |
12199 |
Distribution |
E/G |
Course No. |
CMSC 201 Q course |
||
Title |
Computer Science III |
||
Professor |
Rebecca Thomas |
||
Schedule |
Mon Wed 1:30 pm - 2:50 pm ROSE 113 |
This course covers the implementation and use of advanced data structures such as stacks, queues, hash tables, binary search trees, sets, and graphs via an object-oriented programming language.
Prerequisite: Computer Science 142.
CRN |
12180 |
Distribution |
E/G |
Course No. |
CMSC 225 Q course |
||
Title |
Computer Architecture |
||
Professor |
Robert McGrail |
||
Schedule |
Mon Wed 10:00 am - 11:20 am HEG 107 |
This course is an introduction to the structure and operation of a modern computer architecture. Topics will include instruction sets, pipelining, instruction-level parallelism, caches, memory hierarchies, storage systems and multiprocessors. Assembly language programming will be used to demonstrate the concepts.
Prerequisites: Computer Science 201 with Physics 212 strongly recommended.
CRN |
12304 |
Distribution |
E/G |
Course No. |
CMSC 312 Q course |
||
Title |
Theory of Computation |
||
Professor |
Robert McGrail |
||
Schedule |
Tu Th 3:00 pm - 4:20 pm ROSE 113 |
The course will introduce several computational models that have been developed to formalize the notion of an algorithm. It will also discuss in detail several of the primary topics in the theory of computation including the theory of recursive functions, Turing machines, and several undecidable problems such as the Halting problem.
Prerequisites:Computer Science 301 and Mathematics 231/235.