Technical Training, Syllabus
Introduction to computer programming:
• Algorithm, Flowcharts, Pseudocode and process of program from Source
code to Executable
• Keywords, Identifiers, Primitive Data types in C, variables, constants,
operators, expressions, evaluation of expressions, type conversion,
precedence and associatively in C.
• Decision making statements, nesting of decision control structures, break,
goto statement.
• Looping statements (While, Do-While, for), nested loop, use of break and
C Programming
continue.
Array & String:
• Concepts of array, declaration and initialization of arrays, Declaration one
dimension and two dimensional arrays, string and string operations, string
arrays.
Functions & Recursion:
• Functions – definition of function, Declaration of function, Call and return
Pass by value, Pass by reference, Scope of variables, Storage classes,
Recursion, Recursion vs Iteration
Pointer:
• Basics of pointers, pointer to pointer, pointer and array, pointer to array,
array of pointers, functions returning a pointer.
Structure:
• Basics of structure, structure members, accessing structure members,
nested structures, array of structures, structure and functions, structures
and pointers, Difference between structure and union.
• Introduction to Dynamic memory allocation, malloc, calloc.
Introduction to Data Structure:
• Data Structure, Types of data structure: Linear and non-linear data
structures, operations on Data Structures.
• Linear arrays and their representation, Traversing Linear Array, Insertion
& Deletion in arrays, searching – linear search, binary search, sorting –
Data Structure
insertion sort , selection sort , bubble sort , Quick sort & merge sort etc.
Linked List:
• Linear linked list, Representation of Linked Lists in Memory, Traversing
a linked list, searching a linked list, insertion in & deletion from linked list,
Header Linked List, doubly linked list, Operations on doubly linked list,
complexity analysis of each algorithm, Application of linked lists.
Stacks:
• Operations on stacks: PUSH & POP, Application of stacks: Parenthesis
matching, evaluation and conversion of postfix, prefix and infix
expressions, Meaning and importance of recursion.
Queues:
• Linear queue, Circular queue, Operations on Queue, Deques, Priority
queue.
Graphs & Tree:
• Graph Theory terminology, traversing a graph (BFS, DFS), Operations on
Graph.
• Basic terminology of Tree, Binary Trees, traversing Binary Trees
(Preorder, Postorder, Inorder), Binary Search trees, Searching, Inserting &
Deleting in Binary Search Trees, AVL Search trees, B Trees.
Hashing:
• Hash Table, Hash Functions, Collision Resolution Strategies, Hash Table
Implementation.
Algorithm and its characteristics:
• Algorithms and its characteristics, Growth of functions: asymptotic
notations, Performance analysis and measurement of algorithms, Time and
space complexity.
Divide and Conquer applications
Algorithm
Greedy Algorithms:
• Knapsack problem, Minimum cost spanning trees (Prim’s and Kruskal’s
algorithms), Single source shortest paths - Dijkstra’s and Bellman Ford
algorithms.
Dynamic Programming:
• Matrix-chain multiplication problem, longest common Subsequence
Problem, All pair shortest paths - Floyd Warshall algorithm.
Back Tracking: - General method, 8 queen's problem