This ExploreMYX is designed to introduce you to the courses required for a major in computer science. Along with a major in Artificial Intelligence, a major in computer science is among the most technologically advanced and demanding majors out there. It is alos one of the most fascinating! Computer science includes the study both of the architecture of computers and the foundations of computing, from computer languages to algorithms, network design, data modeling and artificial intelligence. Computer science is inherently interdisciplinary, drawing from both engineering and mathematics at its foundations while employing techniques as far ranging as probability and statistics on the one hand and circuit design on the other. It is the basic tool for exploring the artificial world as psychology is basic to exploring the human one. This ExploreMYX is the perfect way to learn first hand if majoring in computer science is the right choice for you.
Anil Jain, Alan Turing, Barbara Liskov
How to think algorithmically and solve programming problems efficiently
Concepts like abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development
How to develop and present a final programming project to your peers
How do you optimally encode a text file? How do you find shortest paths in a map? How do you design a communication network? How do you route data in a network? What are the limits of efficient computation?
This course, part of the Computer Science Essentials for Software Development Professional Certificate program, is an introduction to design and analysis of algorithms, and answers along the way these and many other interesting computational questions.
You will learn about algorithms that operate on common data structures, for instance sorting and searching; advanced design and analysis techniques such as dynamic programming and greedy algorithms; advanced graph algorithms such as minimum spanning trees and shortest paths; NP-completeness theory; and approximation algorithms.
After completing this course you will be able to design efficient and correct algorithms using sophisticated data structures for complex computational tasks.
How to represent data in ways that allow you to access it efficiently in the ways you need to
How to bootstrap solutions on small inputs into algorithmic solutions on bigger inputs
Solutions to several classic optimization problems
How to critically analyze whether a locally optimal approach (greedy) can provide a globally optimal solution to a problem
In this course you will engage in a series of challenges designed to increase your own happiness and build more productive habits. As preparation for these tasks, Professor Laurie Santos reveals misconceptions about happiness, annoying features of the mind that lead us to think the way we do, and the research that can help us change. You will ultimately be prepared to successfully incorporate a specific wellness activity into your life.
This work totals 115 hours over the course of 15 weeks
Please note that MYX will enroll you in these courses before the start of term.