Academics Courses
Programming, Data Structures and Algorithms Using Python (NPTEL, IIT Madras)
Sikhami InstituteEnglish

Free
Join for free- 45 video lectures (13h 27m)
- Certificate of completion
- Ask the teacher your doubts
- Watch on the web and in the Android app
About this course
The NPTEL course on programming, data structures and algorithms in Python by Prof. Madhavan Mukund (Chennai Mathematical Institute), from IIT Madras. Who it's for: engineering and science students, and anyone who wants a university-level foundation in programming. These are the free, official videos of the "Programming, Data Structures And Algorithms Using Python" playlist from the NPTEL-NOC IITM YouTube channel (youtube.com/@nptel-nociitm9240). All videos belong to NPTEL and IIT Madras; Sikhami is not affiliated with NPTEL and IIT Madras and simply arranges the public playlist into a course, so you can learn one lesson at a time and keep track of your progress.
What you will learn
• Algorithms and programming, starting from the gcd and Euclid's algorithm • Python basics: values, types, control flow, functions, lists and dictionaries • Searching and sorting, and measuring efficiency • Recursion • Exceptions, input and output, and files • Classes, objects and user-defined data structures • Dynamic programming, and how Python compares with other languages
Course content
1 section · 45 lectures · 13h 27m
1. Programming, Data Structures And Algorithms Using Python
- algorithms and programming: simple gcd27m
- improving naive gcd13m
- euclid's algorithm for gcd23m
- downloading and installing python21m
- assignment statement, basic types - int, float, bool21m
- strings21m
- lists28m
- control flow19m
- functions18m
- examples11m
- more about range()10m
- manipulating lists18m
- breaking out of a loop12m
- arrays vs lists, binary search24m
- efficiency11m
- selection sort12m
- insertion sort10m
- recursion17m
- mergesort24m
- mergesort, analysis10m
- quicksort14m
- quicksort analysis12m
- tuples and dictionaries15m
- function definitions12m
- list comprehension18m
- exception handling17m
- standard input and output16m
- handling files23m
- string functions16m
- formatting printed output7m
- pass, del() and none7m
- backtracking, n queens35m
- global scope, nested functions10m
- generating permutations7m
- sets, stacks, queues18m
- priority queues and heaps21m
- abstract datatypes, classes and objects15m
- classes and objects in python19m
- user defined lists23m
- search trees23m
- memoization and dynamic programming18m
- grid paths18m
- longest common subsequence24m
- matrix multiplication16m
- wrap-up, python vs other languages27m