CS11001 Programming and Data Structure


Instructor:

 Palash Dey

Teaching Assistants:

 Satendra Kumar, Minu Tiwari, Atrayee Majumder, Ayan Chandra

Sections: 7 and 8

Course overview:
 Introduction to digital computers; introduction to programming a variables, assignments; expressions; input/output; conditionals and branching; iteration; functions; recursion; arrays; introduction to pointers; character strings; time and space requirements; searching and sorting; structures; introduction to data-procedure encapsulation; dynamic allocation; linked structures; introduction to data structures a stacks and queues.

Classes:
 Venue: NR-122. Timings: Thursday (9:00-9:55), Friday (11:00-12:55)

Grading:
 Mid-semester examination: 30%, End-semester examination: 50%, Two class tests and attendance: 20%

Announcements:

Lectures:


2 January 1. Introduction to Computer, Machine Language Introduction Slides
3 January 2. Introduction to Flow-chart, High-level Language
9 January 3. Control Statements Control Statements Slides
10 January 4. Control Statements cont.
16 January 4. Control Statements cont.
17 January 5. Function Function Slides
23 January 6. Function cont.
24 January 7. Function cont.
30 January 8. Array 1 Dimendional Array Slides
2 Dimendional Array Slides
31 January 9. Array cont.
6 February 10. String String Slides
7 February 11. String cont., Linear Search
13 February 12. Binary Search, Selection Sort, Insertion Sort Search and Sorting Slides
14 February 13. Bubble Sort, Quick Sort
20 February Mid-semester Examination
21 February Mid-semester Examination
27 February 13. Merge Sort Merge Sort Slides
28 February No class
6 March Structures Structures
7 March No class
12 March Pointers Pointers
13 March Dynamically Allocating 2D Arrays Pointers to 2D Array, Dynamic Memory Allocation
19 March (through online (not live) lecture video sent to students) File Handling and Command Line Argument File Handling and Command Line Argument
20 March (through online (not live) lecture video sent to students)
26 March (through online (not live) lecture video sent to students) Number System Number System
27 March (through online (not live) lecture video sent to students) Linked List Linked List
16 April (through online (not live) lecture video sent to students) Stack and Queue Stack and Queue
23 April (through online (not live) lecture video sent to students) Complexity Complexity


References:
  1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, Prentice Hall of India
  2. E. Balaguruswamy, Programming in ANSI C, Tata McGraw-Hill
  3. Byron Gottfried, Schaum's Outline of Programming with C, McGraw-Hill
  4. Seymour Lipschutz, Data Structures, Schaum's Outlines Series, Tata McGraw-Hill
  5. Ellis Horowitz, Satraj Sahni and Susan Anderson-Freed, Fundamentals of Data Structures in C, W. H. Freeman and Company
  6. R. G. Dromey, How to Solve it by Computer, Prentice-Hall of India
  7. CS11001 Programming and Data Structure courses offered before in IIT Kharagpur (link)