Unit I : Introduction to C
Constants, variables and keywords in C, operators and control structure in c(decision, loop and case), functions, macros, arrays and string manipulation, structure, union, enumeration, bitwise operations.
Unit II : Arrays & Pointers in C
Functions: Parameter passing call by value and call by reference, scope rules, functions and pointers, function returning pointer and pointer to function, String manipulations using arrays,pointer to pointer. Structure and Union: Passing and returning structure as parameter for function ,structure and pointer.
Recursion: Definition, writing recursive functions & how recursion works. File handling using C.
Unit III : Introduction to Data structures & Analysis of Algorithams
Introduction to Data Structures: Concept of data, Data object, Data structure, Abstract Data Types (ADT), realization of ADT in ‘C’. Concept of Primitive and non primitive, linear and Non-linear, static and dynamic ,persistent and ephemeral data structures. Analysis of algorithm: frequency count and its importance in analysis of an algorithm, Time complexity & Space complexity of an algorithm, Big ‘O’, ‘W’ and ‘q’ notations, Best, Worst and Average case analysis of an algorithm.
Unit IV : Searching and sorting techniques
Need of searching and sorting, why various methods of searching and sorting, Sorting methods:Linear and binary search. Sorting methods : Bubble, insertion, selection, merge, quick, bucket, Time complexity of each searching and sorting algorithm.
Unit IV : Linear data structures using sequential organization
Concept of sequential organization, Concept of Linear data structures, Concept of ordered list, Storage representations of ordered list such as row major , column major and their address calculation. Representation of sparse matrix using arrays, application of array in polynomial representation and algorithm for sparse matrix addition, multiplication, simple and fast transpose.
Unit VI : Linear data structures using linked organization
Concept of linked organization, singly linked list, doubly linked list, circular linked list. Linked list as ADT. Representation and manipulations of polynomials using linked lists, comparison of sequential linked organization with linked organization, concept Generalized Linked List.
Text Books
1. R. Gilberg, B. Forouzan, “Data Structures: A pseudo code approach with C”, Cenage Learning,
ISBN 9788131503140.
2. E. Horowitz , S.Sahani, S.Anderson-Freed “Fundamentals of Data Structures in C”,
Universities Press ,2008 ,ISBN 10:8173716056
3. Yashwant Kanitkar,”Let us C & Pointer in C”,BPB Publication
References Books
1. Kernighan and Ritchie, "The C Programming Language", Prentice Hall
2. Tremblay and Sorenson, "An introduction to data structures with applications", Tata
McGrawHill, Second Edition