6.0001 Introduction to Computer Science and Programming in Python is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiabl…
In this lecture, Dr. Bell introduces the theory of computation and explains some aspects of computational thinking. Programming languages are discussed, with an emphasis on basic Python syntax and data structures.
In this lecture, Prof. Grimson explains basic search and sort algorithms, including linear search, bisection search, bubble sort, selection sort, and merge sort.
In this lecture, Prof. Grimson continues discussing different classes of algorithmic complexity, including logarithmic complexity, polynomial complexity, and exponential complexity.
In this lecture, Prof. Grimson introduces algorithmic complexity, a rough measure of the efficiency of a program. He then discusses Big "Oh" notation and different complexity classes.
This in-class question demonstrates how subclasses are constructed in Python.
This in-class question explains how and why class attribute getters and setters are important in Python.
In this lecture, Dr. Bell continues the discussion of Object Oriented Programming in Python, with an emphasis on data control, inheritance, and subclasses.
This in-class question demonstrates how a custom class method can be constructed in Python.
This question explains the how a class method changes a attribute is altered in Python.
This in-class exercise demonstrates class method construction in Python.
This in-class question explains the how a class instance is initialized in Python.
This in-class question demonstrates class definitions in Python.
In this lecture, Dr. Bell introduces Object Oriented Programming and discusses its representation in Python.
This in-class question demonstrates the use of exceptions in Python.
This in-class question explains aspects of testing, including path-completeness and boundary conditions.
In this lecture, Dr. Bell discusses testing, debugging, and exceptions and assertion statements in Python.
In this lecture, Prof. Grimson introduces the concept of recursion and the Python dictionary data type.
This in-class exercise demonstrates list how aliasing affects other list operations in Python.
This in-class exercise demonstrates more simple list operations in Python, including indexing, extending, sorting, and deleting.
This in-class question demonstrates basic list operations in Python.
This in-class question demonstrates tuples in Python, including the difference between tuples and strings.
In this lecture, Dr. Bell introduces compound data types, such as lists and tuples, and explains the concepts of aliasing, mutability, and cloning.
This in-class question demonstrates how functions can be used as arguments in other functions in Python.
This in-class question demonstrates the differences between Print and Return statements in function construction in Python.
In this lecture, Dr. Bell discusses program structuring, functions, specifications, scoping, and the difference between the "return" and "print" keywords in Python.
This in-class question demonstrates how loops can be used with strings in Python.
This in-class question demonstrates the use of string indices in Python.
In this lecture, Dr. Bell discusses string manipulation, guess-and-check algorithms, approximate solution methods, and bisection search.
This in-class question demonstrates For Loops and Break statements in Python.
This in-class question demonstrates While Loops in Python. *** Correction for Lecture_02_exercise_04: The right answer should be print "You got out of the Lost Forest!" ***
This in-class question demonstrates how conditional branching works in Python.
This in-class exercise demonstrates how conditionals and comparisons work in Python.
This in-class exercise demonstrates working with strings in Python.
In this lecture, Dr. Bell introduces strings and indentation in Python, then discusses basic features of programmatic logic, such as branching, conditionals, iteration, and loops.
This in-class question explains variable bindings and the order of operations in python.
This in-class question explains what mathematical statements are and are not valid in python.
This in-class question explains the difference between the IDLE python environment and the shell.