Skip to content

evilusean/MIT-6.001x-edx-Introduction-to-Computer-Science-using-Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MIT-6.001x-edx-Introduction-to-Computer-Science-using-Python

From Edx edX-MITx-6.00.1x edX-sponsored course, MIT 6.00.1x. Learning the basics of computer programming in Python and the fundamentals of computation, as well as getting the opportunity to implement your own Python functions.

About This Course (Description from edX) This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.

Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not "computation appreciation" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.

Week 1 Lecture 1 – Introduction to Python: Knowledge Machines Languages Types Variables Operators and Branching Lecture 2 – Core elements of programs: Bindings Strings Input/Output IDEs Control Flow Iteration Guess and Check Week 2 Lecture 3 – Simple Programs: Approximate Solutions Bisection Search Floats and Fractions Newton-Raphson Lecture 4 – Functions: Decomposition and Abstraction Functions and Scope Keyword Arguments Specifications Iteration vs Recursion Inductive Reasoning Towers of Hanoi Fibonacci Recursion on non-numerics Files Week 3 Lecture 5 – Tuples and Lists: Tuples Lists List Operations Mutation, Aliasing, Cloning Lecture 6 – Dictionaries: Functions as Objects Dictionaries Example with a Dictionary Fibonacci and Dictionaries Global Variables Week 4 Lecture 7 – Debugging: Programming Challenges Classes of Tests Bugs Debugging Debugging Examples Lecture 8 – Assertions and Exceptions Assertions Exceptions Exception Examples Week 5 Lecture 9 – Classes and Inheritance: Object Oriented Programming Class Instances Methods Classes Examples Why OOP Hierarchies Your Own Types Lecture 10 – An Extended Example: Building a Class Viualizing the Hierarchy Adding another Class Using Inherited Methods Gradebook Example Generators Week 6 Lecture 11 – Computational Complexity: Program Efficiency Big Oh Notation Complexity Classes Analyzing Complexity Lecture 12 – Searching and Sorting Algorithms: Indirection Linear Search Bisection Search Bogo and Bubble Sort Selection Sort Merge Sort Week 7 Lecture 13 – Visualization of Data: Visualizing Results Overlapping Displays Adding More Documentation Changing Data Display An Example Lecture 14 – Summary

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published