| Instructor:  | Robert Roos |   |   | course website |
| Location:  | Alden Hall, Room 101 |
| Lecture: | M,W,F - 9:00 - 9:50AM |   |   | Lab Session: | T - 2:30 - 4:20PM |
|
An introduction to the principles of computer science with an emphasis on algorithmic problem solving and the realization of al-gorithms using a modern object-oriented programming language. Topics include algorithms, problem solving, programming, classes, primitive data types and objects, control structures, arrays and vectors, principles of object-oriented design and programming, and an introduction to graphics and graphical user interfaces. The course also includes an overview of the discipline of computer science and a study of the social implications of computer use. May serve as the laboratory course in the Natural Science Division's distribution requirement. One laboratory per week. Prerequisite: Knowledge of elementary algebra.
A continuation of Computer Science 111 with an emphasis on data structures, data abstraction, algorithm design, the analytical and experimental evaluation of algorithm performance, and object-oriented design and implementation techniques. Topics include stacks, queues, deques, lists, strings, trees and graphs, dictionaries, recursion, searching and sorting algorithms, and an introduction to program veriļ¬cation. May serve as the laboratory course in the Natural Science Division's distribution requirement. One laboratory per week. Prerequisite: Computer Science 111 or permission of the instructor.
Core Courses
| Instructor:  | Andrew Thall |   |   | course website |
| Location:  | Alden Hall, Room 101 |
| Lecture: | M,W,F - 10:00 - 11:50AM |   |   | Lab Session: | TH - 2:30 - 4:20PM |
|
A treatment of selected topics from the analysis of algorithms including models of computation, design of effcient algorithms, computational complexity, and NP-completeness. Students develop expertise in mathematical analysis and algorithmic programming methodology. One laboratory per week. Prerequisites: Computer Science 112 and Mathematics 205.
| Instructor:  | Robert Roos |   |   | course website |
| Location:  | Alden Hall, Room 101 |
| Lecture: | M,W,F - 10:00 - 10:50AM |   |   | Lab Session: | M - 2:30 - 4:20PM |
|
A survey of the theory, computational techniques, and applications of artificial intelligence. Topics include agents, knowledge represen-tation, machine learning, general problem solving, natural language processing, neural networks, evolutionary computation, computer vision, robotics, and philosophical questions. One laboratory per week. Prerequisite: Computer Science 112. Offered in alternate years.
| Instructor:  | Andrew Thall |   |   | course website |
| Location:  | Alden Hall, Room 103 |
| Lecture: | T,TH - 9:30 - 10:45AM |   |   | Lab Session: | W - 2:30 - 4:20PM |
|
An introduction to the basic concepts of compiler design and implementation from lexical, syntactic, and semantic analysis to target code generation. Topics are presented from an implementa-tion point of view. The semester project includes construction of a compiler for a small language using lexing and compiler languages. One laboratory per week. Prerequisites: Computer Science 220 and 230 or permission of the instructor. Offered in alternate years.
A corequisite seminar for all students participating in the Intern-ship Program. Internship students enroll twice, once prior to and once following the Internship. Computer Science 550 focuses on expectations and planning, leading to the Internship Proposal required for all students planning an internship. Computer Science 551 provides the opportunity for students who have completed the Internship to prepare written and oral reports on the Internship experience. The student, in consultation with the faculty of the Department of Computer Science, is responsible for arranging for an acceptable internship. The courses meet together weekly for one-half a semester. Credit: One semester hour for each course. Prerequisites: Completion of at least two core courses.
CS 580. Junior Seminar: Topics & Research Methods in Comp. Sci. |
more info...
|
An advanced treatment of selected topics from various areas of computer science with an emphasis on appropriate research methods. Practical skills are acquired in technical writing, critical reading, and presentation of technical literature in preparation for the senior project. One laboratory per week. Prerequisite: Completion of the computer science core or permission of the instructor.
| Instructor:  | Robert Roos |
| Location:  | Alden Hall, Room 102 |   |   | course website |
| Lecture: | T,TH - 9:30 - 10:45AM |   |   | Lab Session: | W - 2:30 - 4:20PM |
|
Independent research in computer science. Prerequisite: Computer Science 580. Credit: One semester hour.
| Instructor:  |
Robert Roos |
  |   |
course website |
| Location:  | Alden Hall, Room 102 |
| Lecture: | T,TH - 9:30 - 10:45AM |   |   | Lab Session: | W - 2:30 - 4:20PM |
|
Continuation of independent research in computer science. Pre-requisite: Computer Science 600. Credit: Three semester hours