Introduction: Overview – How to create programs and analyze them. Arrays – Structures - Ordered List – Representation of arrays – Simple Applications.
Stacks and Queues: Fundamentals – Structures – Operations – Multiple stacks and queues – Applications - Evaluation of Expressions.
Linked Lists: Singly Linked List – Linked Stacks and Queues - The Storage Pool – Applications – Polynomial addition, Sparse Matrices – Doubly Linked List – Dynamic Storage Management – Garbage Collection and Compaction.
Searching and Sorting: Binary, Sequential and Fibonacci Searching – Internal Sorting: Insertion, Quick, Merge, Heap, Radix sorts – External Sorting: Sorting with Disks – K-way Merging – Sorting with Tapes – Balanced Merge – Poly-phase Merge – Symbol Tables – Static tree – Dynamic Tree – Hash Tables.
Files: Files, Queries and Sequential organization – Indexed Techniques – File Organization: Sequential, Random, Linked Organization – Inverted Files – Cellular Partitions. Introduction to trees and types.