https://github.com/lucasbotang/edx_introduction_to_computer_science_and_programming_using_python
Introduction to computer science using python
https://github.com/lucasbotang/edx_introduction_to_computer_science_and_programming_using_python
computer-science python
Last synced: 9 months ago
JSON representation
Introduction to computer science using python
- Host: GitHub
- URL: https://github.com/lucasbotang/edx_introduction_to_computer_science_and_programming_using_python
- Owner: LucasBoTang
- Created: 2018-05-12T21:32:25.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2019-01-19T05:52:28.000Z (over 7 years ago)
- Last Synced: 2025-01-25T10:41:23.712Z (over 1 year ago)
- Topics: computer-science, python
- Language: Python
- Homepage:
- Size: 15.3 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Introduction to Computer Science and Programming Using Python
Coding exercises for Edx MITx: 6.00.1x Introduction to Computer Science and Programming Using Python.
## List of Lecture Topics:
### 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
### 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
### 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
### Lecture 7 – Debugging:
- Programming Challenges
- Classes of Tests
- Bugs
- Debugging
- Debugging Examples
### Lecture 8 – Assertions and Exceptions
- Assertions
- Exceptions
- Exception Examples
### 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
### 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
### Lecture 13 – Visualization of Data:
- Visualizing Results
- Overlapping Displays
- Adding More Documentation
- Changing Data Display
- An Example
### Lecture 14 – Summary