X
X
X

X
Courses » Programming, Data structures and Algorithms using C

Programming, Data structures and Algorithms using C

ABOUT THE COURSE:

This is a course on programming, data structures and algorithms. The learner is assumed to have no prior experience of programming, but is expected to be at the level of a second year undergraduate college student in science or engineering. The course will run over ten weeks with about 2-3 hours of lectures per week.
At the end of each week, the learner is expected to write some programs and submit them for grading. These programming problems are classified as easy, moderate or difficult. The easy problems, typically, are repeats from the lecture. The moderate and difficult ones will require increasing levels of initiative from the learner. 

In addition, at the end of each week the learner is expected to answer a set of objective-type assessment questions. 

INTENDED AUDIENCE: 
Aimed at college students 2nd year & above


29497 students have enrolled already!!

COURSE INSTRUCTOR



Sudarshan Iyengar has a PhD from the Indian Institute of Science and is currently working as an assistant professor at IIT Ropar and has been teaching this course from the past 4 years.

COURSE LAYOUT:

Week 1: Introduction to Computers and Programming,Writing your first program, Variables and operators and expressions, Variable declarations, more operators, precedence, Input, Output Statements, Conditionals, Loops

Week 2:  Arrays and Multidimensional arrays, Pointers

Week 3: Functions, Running time of a program, Computing time complexity

Week 4: Polynomial evaluation and multiplication, Searching: Linear and Binary, Finding minimum and maximum, Sorting I: Insertion, Merge, Sorting II: Counting, Radix, Finding i-th smallest number

Week 5: Structures and User-defined data types, Brief introduction to C++: Classes and objects, Data Structures: Abstract Data Type

Week 6: Lists, Stacks: Last In First Out, Queues: First In First Out, Trees, Tree traversal, Heaps, Graphs and Representation

Week 7: Greedy algorithms, Dynamic programming, Matrix Chain Multiplication

Week 8: Dijkstra's Algorithm, Strings, Boyer-Moore String Matching Algorithm, File I/O, Modular Programming
CERTIFICATION EXAM:
  • The exam is optional for a fee.
  • Date and Time of Exams: April 28 (Saturday) and April 29 (Sunday) : Afternoon session: 2pm to 5pm.
  • Exam for this course will be available in one session on both 28 and 29 April. 
  • Registration url: Announcements will be made when the registration form is open for registrations.  
  • The online registration form has to be filled and the certification exam fee needs to be paid. More details will be made available when the exam registration form is published.

CERTIFICATE:

  • Final score will be calculated as : 25% assignment score + 75% final exam score
  • 25% assignment score is calculated as 25% of average of 08 weeks course: Best 06 out of 08 assignments
  • E-Certificate will be given to those who register and write the exam and score greater than or equal to 40% final score. Certificate will have your name, photograph and the score in the final exam with the breakup. It will have the logos of NPTEL and IIT Madras. It will be e-verifiable at nptel.ac.in/noc/