Profile of <span>Ananya Christman</span>
Office
75 Shannon 209
Tel
(802) 443-5841
Email
achristman@middlebury.edu
Office Hours
On Leave Fall 2022

Courses Taught

Course Description

Data Structures
In this course we will study the ideas and structures helpful in designing algorithms and writing programs for solving large, complex problems. The Java programming language and object-oriented paradigm are introduced in the context of important abstract data types (ADTs) such as stacks, queues, trees, and graphs. We will study efficient implementations of these ADTs, and learn classic algorithms to manipulate these structures for tasks such as sorting and searching. Prior programming experience is expected, but prior familiarity with the Java programming language is not assumed. (CSCI 0145 or CSCI 0150) (Juniors and Seniors by waiver) 3 hrs. lect./lab

Terms Taught

Spring 2020, Spring 2021, Fall 2021

Requirements

DED

View in Course Catalog

Course Description

Algorithms and Complexity
This course focuses on the development of correct and efficient algorithmic solutions to computational problems, on the underlying data structures to support these algorithms, and on the social implications of algorithms. Topics include computational complexity, analysis of algorithms, proof of algorithm correctness, some advanced data structures, algorithmic techniques including greedy and dynamic programming, and the consequences of real-world applications of algorithms. The course complements the treatment of NP-completeness in CSCI 0301. (CSCI 0200 and CSCI 0201) 3 hrs. lect./disc.

Terms Taught

Fall 2019, Fall 2020

Requirements

DED

View in Course Catalog

Course Description

Artificial Intelligence
Artificial Intelligence (AI) is the study of computational systems that exhibit rational behavior. Applications include strategic game playing, medical diagnosis, speech and handwriting recognition, Internet search, and robotics. Course topics include intelligent agent architectures, search, knowledge representation, logical reasoning, planning, reasoning under uncertainty, machine learning, and perception and action. (CSCI 0200 and CSCI 0201) 3 hrs. lect./lab

Terms Taught

Spring 2020, Spring 2021, Spring 2022

Requirements

DED

View in Course Catalog

Course Description

Advanced Study
Individual study for qualified students in more advanced topics in computer science theory, systems, or application areas. Particularly suited for students who enter with advanced standing. (Approval required) 3 hrs. lect.

Terms Taught

Winter 2019, Fall 2019, Winter 2020, Spring 2020, Fall 2020, Winter 2021, Spring 2021, Fall 2021, Winter 2022, Spring 2022, Fall 2022, Winter 2023, Spring 2023

View in Course Catalog