Introduction to Computer Science 2: Algorithms and Application
CS4384.01
Course Description
Summary
Embark on a deeper exploration of computer science, where the focus shifts from programming and foundations of computer science, to the intricacies of algorithms and their real-world applications. This course reinforces and builds upon the concepts introduced in Introduction to CS 1, and provides an introduction to algorithm design, data analysis, and the practical application of computational techniques. You will learn not only how to explore possible solutions using computational thinking, but also how to analyze and understand the data that drives these solutions. You will explore a selection of topics such as dynamic programming, stochastic modelling, statistical inference, and machine learning. These techniques will provide you with some tools to make sense of the vast amounts of data often encountered in computing tasks. This course does not simply aim to expand your technical skill set. It seeks to cultivate a critical mindset that questions, analyzes, and interprets data, so that you can make informed inference and decisions. It invites those who are intrigued by the power of algorithms to engage computation in diverse contexts, setting the stage for advanced study in science, the arts, and beyond. This course follows from Introduction to Computer Science 1: Programming and Computer Science. Topics include: Python programming, complexity theory, discrete structures, recursion, object-oriented programming, testing and debugging Evaluation will be based on active engagement, projects, and a comprehensive final examination.Prerequisites
Introduction to Computer Science 1: Programming and Computer Science, or permission of the instructor. Contact: darcyotto@bennington.edu.
Please contact the faculty member : darcyotto@bennington.edu