Skip to content

codenigma1/MITx-6.00.1x_Introduction-to-Computer-Science-and-Programming-Using-Python

Repository files navigation

MITx: 6.00.1x

"Introduction to Computer Science and Programming Using Python," is 3 credits course from MITx on the edX platform. In this course provide basic to hard excercise and problem sets. So, the user get gradually understanding in python.

Couse Syllabus:

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

MidTerm Exam ((8 hours’ time limits))

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

Final Exam (8 hours time limits)

About

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages