mirror of
https://github.com/ossu/computer-science.git
synced 2024-10-01 01:26:01 -04:00
46 lines
2.6 KiB
Markdown
46 lines
2.6 KiB
Markdown
|
# 01 - Introduction to Computer Science and Programming
|
||
|
|
||
|
➫ [Link to the original course](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/index.htm)
|
||
|
|
||
|
## Syllabus
|
||
|
|
||
|
### About This Course
|
||
|
|
||
|
Sstrategic goals of this course:
|
||
|
|
||
|
* Help students (who may or may not intend to major in computer science) to feel justifiably confident of their ability to write small programs.
|
||
|
* Map scientific problems into computational frameworks.
|
||
|
* Position students so that they can compete for jobs by providing competence and confidence in computational problem solving.
|
||
|
* Prepare college freshmen and sophomores who have no prior programming experience or knowledge of computer science for an easier entry into computer science or electrical engineering majors.
|
||
|
* Prepare students from other majors to make profitable use of computational methods in their chosen field.
|
||
|
|
||
|
This course can be summarized with these six major topics or objectives:
|
||
|
|
||
|
* Learning a language for expressing computations—Python
|
||
|
* Learning about the process of writing and debugging a program
|
||
|
* Learning about the process of moving from a problem statement to a computational formulation of a method for solving the problem
|
||
|
* Learning a basic set of "recipes"—algorithms
|
||
|
* Learning how to use simulations to shed light on problems that don't easily succumb to closed form solutions
|
||
|
* Learning about how to use computational tools to help model and understand data
|
||
|
|
||
|
This course is designed to help you become skillful at making the computer do what you want it to do. Once you acquire this skill, your first instinct when confronted with many tasks will be to write a program to do the task for you. Said another way, we want to help you learn to apply computational modes of thought to frame problems, and to guide the process of deducing information in a computational manner.
|
||
|
|
||
|
This means that the primary knowledge you will take away from this course is the art of computational problem solving. Unlike many introductory level courses, having an ability to memorize facts will be of little help. This course is about learning to solve problems, not learning facts.
|
||
|
|
||
|
## Table of Contents
|
||
|
|
||
|
### UNIT 1
|
||
|
|
||
|
||Lesson|Archives|
|
||
|
|---|---|---|
|
||
|
|01|INTRODUCTION|[files]()|
|
||
|
|02|CORE ELEMENTS OF A PROGRAM|[files]()|
|
||
|
|03|PROBLEM SOLVING|[files]()|
|
||
|
|04|MACHINE INTERPRETATION OF A PROGRAM|[files]()|
|
||
|
|05|OBJECTS IN PYTHON|[files]()|
|
||
|
|06|RECURSION|[files]()|
|
||
|
|07|DEBUGGING|[files]()|
|
||
|
|08|EFFICIENCY AND ORDER OF GROWTH|[files]()|
|
||
|
|09|MEMORY AND SEARCH METHODS|[files]()|
|
||
|
|10|QUIZ 1|[files]()|
|