Wiki

Programming & Data Structures

The programming spine of a first-year M.Tech AI semester: Python values, control flow, collections, functions, objects, exceptions and files — then the classic data structures (arrays, stacks, queues, linked lists, trees, heaps, hash tables, graphs) and the algorithms that operate on them (asymptotic analysis, sorting, searching, traversal, string matching). Intuition first, an artifact you can play with, then the code and the cost.

Python foundations

Values, variables, input/output and operators; booleans, conditionals and loops; the core containers (list, tuple, set, dict); and functions with arguments, return values and scope.

Objects and I/O

Classes and instances, inheritance and polymorphic dispatch, exceptions as a control path, and reading and writing files behind modules.

Data structures

How data is arranged decides what is cheap: contiguous arrays with stack and queue discipline, linked nodes, BSTs and AVL rotations, binary heaps, hash tables with collisions, and graphs.

Algorithms

Asymptotic analysis as the currency of choice, comparison sorting from insertion to quicksort and merge sort, linear and binary search, graph traversal with BFS and DFS, and substring search with naive, KMP and Rabin-Karp.