Neelima Gupta
Department of Computer Science, University of Delhi
Teaching Calendar
Currently Teaching
Courses Taught During July 2012 - November 2012
MCA 301: Design and Analysis of Algorithms
- Introduction: RAM model, O(log n) bit model.
- Review of data structures: Balanced trees, Mergeable sets.
- Algorithm Design Techniques: Iterative techniques, Divide and conquer, dynamic programming, greedy algorithms.
- Searching and Sorting Techniques: Review of elementary sorting techniques-selection sort, bubble sort, insertion sort; more sorting techniques-quick sort, heap sort, merge sort, shell sort; external sorting.
- Lower bounding techniques: Decision Trees, Adversaries.
- String Processing: KMP, Boyre-Moore, Robin Karp algorithms.
- Introduction to randomized algorithms: Random numbers, randomized Qsort, randomly Built BST.
- Number Theoretic Algorithms: GCD, Addition and Multiplication of two large numbers, polynomial arithmetic, Fast-Fourier Transforms.
- Graphs: Analysis of Graph algorithms Depth-First Search and its applications, minimum Spanning Trees and Shortest Paths.
- Introduction to Complexity Theory: Class P, NP, NP-Hard, NP Completeness.
- Introduction to Approximation Algorithms.
- T.H. Cormen, C.E. Leiserson, R.L. Rivest and C. Stein, Indtroduction to Algoritms, Prentice-Hall of India, 2006.
- J. Kleinberg and E.Tardos, Algorithms Design, Pearson Education, 2006.
- S.Baase, Computer algorithms: Introduction to Design and Analysis, Addison Wesley, 1999.
- A.V. Levitin, Introduction to the Design and Analysis of algorithms, Pearson Education, 2006.
MCS 312: Special Topics in Theoretical Computer Science
Syllabus References Lecture Notes of 2012
|
Subjects Taught Previously
Undergraduate Level
- 1989 - 2002: Systems Analysis and Design, Computer System Architecture, Programming languages from COBOL, Pascal to C, Discrete Structures, Data Structures, Algorithms, Theory of Computation/ Automata Theory, Statistical Techniques
Postgraduate Level
- 2002 - till date: Systems Programming, Data Communication and Computer Networks, Design and Analysis of Algorithms, Algorithms in Bioinformatics, NP Completeness and Approximation Algorithms.
MCS 101: Design and Analysis of Algorithms
MCA 204: Data Communication and Computer Networks