Computer Science and Engineering  Programming, Data Structures and Algorithms in Python
 List Lectures   [ 1 ]  2  3  4  5
 # Lecture Name 1 Lecture 1: Algorithms and programming: simple gcd 2 Lecture 2: Improving naive gcd 3 Lecture 3: Euclid's algorithm for gcd 4 Lecture 4: Downloading and installing Python 5 Lecture 1: Assignment statement, basic types ' int, float, bool 6 Lecture 2: Strings 7 Lecture 3: Lists 8 Lecture 4: Control Flow 9 Lecture 5: Functions 10 Lecture 6: Examples

 Title: Programming, Data Structures and Algorithms in Python Department: Computer Science and Engineering Author: Prof. Madhavan Mukund University: Chennai Mathematical Institute Type: WebLink Abstract: Week Lessons/Topics Week 1 Informal introduction to programmin, algorithms and data structures viagcd Downloading and installing Python gcd in Python: variables, operations, control flow ' assignments, condition'als, loops, functions Week 2 Python: types, expressions, strings, lists, tuples Python memory model: names, mutable and immutable values List operations: slices etc Binary search Inductive function de nitions: numerical and structural induction Elementary inductive sorting: selection and insertion sort In'place sorting Week 3 Basic algorithmic analysis: input size, asymptotic complexity, O() notation Arrays vs lists Merge sort Quicksort Stable sorting Week 4 Dictionaries More on Python functions: optional arguments, default values Passing functions as arguments Higher order functions on lists: map, lter, list comprehension Week 5 Exception handling Basic input/output Handling files String processing Week 6 Backtracking: N Queens, recording all solutions Scope in Python: local, global, nonlocal names Nested functions Data structures: stack, queue Week 7 Abstract datatypes Classes and objects in Python "Linked" lists: find, insert, delete Binary search trees: find, insert, delete Height'balanced binary search trees Week 8 Effcient evaluation of recursive de nitions: memoization Dynamic programming: examples Other programming languages: C and manual memory management Other programming paradigms: functional programming