The document outlines the curriculum for the Data Structures and Algorithms course (CC-213) in the BS Information Technology program at Punjab University Affiliated Colleges. It details course prerequisites, credit hours, and core topics such as algorithm specifications, data types, recursion, trees, graphs, and sorting algorithms. Additionally, it lists required textbooks and reference materials for the course.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
71 views1 page
CC213
The document outlines the curriculum for the Data Structures and Algorithms course (CC-213) in the BS Information Technology program at Punjab University Affiliated Colleges. It details course prerequisites, credit hours, and core topics such as algorithm specifications, data types, recursion, trees, graphs, and sorting algorithms. Additionally, it lists required textbooks and reference materials for the course.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1
Curricula/Syllabi of BS Information Technology for Punjab University Affiliated Colleges
Course Title Data Structures and Algorithms
Course Code CC-213 Credit Hours 3 Category Computing core Prerequisite CC-211: Object Oriented Programming Co-Requisite None Follow-up CC-311: Operating Systems, DI-326: Artificial Intelligence Algorithm Specification: Properties of Algorithm, examples, performance, complexity analysis, measurement, and Big Oh notation. Abstract data types (ADTs): Array and Polynomial as an ADT, Sparse Matrices, and Representation of Arrays. Stack ADT: Linked lists and array implementations, Expressions, Postfix Notation, and Infix to postfix conversion. Recursion: Recursive Definition and Processes, Writing Recursive Programs, analyzing recursive algorithms. Queue: The Queue ADT, Linked and array implementations of queues, circular and double ended queue, dequeuer, priority queues. Self- Referencing Classes: Dynamic Memory Allocation, garbage collection. Linked List: Singly Linked Lists, Circular Lists, Linked Stacks and Queues (Double Ended Course List), Doubly Linked Lists. Trees: Introduction to Trees, Logical construction and Description traversing of Binary Trees, Implementation of Binary Trees (Insertion and Traversing), Searching and deletion in Binary Trees, Binary Search Tree, Introduction to Balanced and AVL Trees. Heaps: Heaps and Heaps as Priority Queues, Double Ended Priority Queue. Searching: Linear Search, Binary Search, and Types of Indexing. Hashing: Hash Functions, Division, Overflow Handling, Chaining. B-Trees, Generalized List, etc. Divide and conquer algorithms. Sorting: selection, insertion, merge, quick, bubble, heap, shell, radix, bucket. Graphs: Graph terminology, Adjacency List and Adjacency Matrix and Adjacency list representation of Graph. Elementary Graph Operations: Breadth First Search and Depth First Search, Spanning Trees (BFSST, DFSST), topological order, shortest path. 1. Ellis Horowitz, Sartaj Sahni, D. Mehta, Fundamentals of Data Structures in C++, 2nd Ed., Computer Science Press, 1995. ISBN 81-7808-792-8. Text Book(s) 2. Adam B. Drozdek, Data Structure and Algorithm in C++, 4th Ed., Cengage Learning, ISBN 978-1133608424. 1. D. Samanta, Classic Data Structures, Prentice Hall, 2001, ISBN: 812033731X. 2. Mark Allen Weiss, Data Structure and Algorithms in C++, 3rd Ed., Pearson Education, 2006, ISBN: 978-0321441461. Reference Material 3. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, Introduction to Algorithms, 2nd Ed, MIT Press, 2001, ISBN 0-07-013151-1. 4. Reference from different books enlisted in reference material will be given as required or lecture notes for reading will be provided.