Course Policy & Syllabus of data structure
Course Policy & Syllabus of data structure
Item Description
Title Data Structure and Algorithm
3rd Week:
Strings
• Introduction
• Representation of Strings in Memory
• Fixed Length Strings and Variable Length Strings
• Linked Strings
• String Operations
• Computing Length of Strings
• Copying Strings and String Connection
• Extracting Sub-String from String
• Pattern Matching
• Insertion, Deletion, and Replacement Operations
4th Week:
Stacks
• Introduction
• Representation of Stacks
• Stack Operations (Push and Pop)
• Recursion ۲ ۳ ۵127
• Conditions for Recursive Procedure
• Implementation of Recursive Procedure using Stacks
• Implementation of Stacks in a programming language
5th Week:
Queues
• Introduction
• Representation of Queues
• Procedure Q-insert
• Procedure Q-delete
• Deques
• Representation of Deque
• Implementation of Queue and Deque in a programming
language
6th Week:
Searching and Sorting
• Searching
• Sequential Search
• Binary Search
• Implementation of Searching in C++
• Sorting
• Bubble Sort
• Selection Sort
• Insertion Sort
• Merge Sort
• Quick Sort
• Implementation of Searching and Sorting in a programming
language
7th Week:
Linked Lists
• Introduction
• Pointer
• Single Linked List
• Representation of Single Linked List in Memory
• Operations (Traversing, Insertion, Deletion) of Single Linked
List
8th Week:
Midterm Exam(20%)
Linked Lists
• Double Linked List
• Representation of Double Linked List in Memory
• Operations (Traversing, Insertion, Deletion) of Double
Linked List
Implementation of Linked Lists in a Programming
Language •
9th Week:
Trees
• Introduction
• Binary Tree, Full Binary Tree, and Extended Binary Tree
• Complete Binary Tree and Binary Search Tree (BST)
• Constructing Binary Search Tree Representation of Binary
Tree inside Compute
10th Week:
Trees
• Operation (Insertion, Searching, Deletion) of Binary Tree
• Traversing (Pre-Order, In-Order, Post-Order) Operations
• Implementation of Trees in a Programming Language
11th Week:
Graphs
• Introduction
• Directed Graph, Undirected Graph, and Weighted Graph
• Degree (Out Degree, In Degree) of Node, Source, and Sink
Nodes
• Path and Length of Graph
• Loop Edge, Multiple Edge, Complete Graph, Cycle, and
Acycle
• Representation of Graph
12th Week:
Graphs
• Adjacency List, Adjacency Matrix, List vs. Matrices
• Traversing Graph
• Breadth- First Search (BFS)
• Depth-First Search (DFS)
13th Week:
Hashing
• Hashing Concepts
• Collision and Collision Resolution
• Hash Function
• Memory Representation
14th Week:
Hashing
• Chained Hashing
• Open Addressing
• Linear Probing
• Double Hashing
• Implementation of Hashing in a programming language
15th Week:
Time and Space Complexity in Data Structure
• Algorithms Analysis, Methods, and Types
• Algorithms Complexity
• Big-O Notation
• Space Complexity Analysis
• Time Complexity Analysis
16th Week:
Final Exam
Text Books:
2. Assignments & Class-work Policy: Student should do work on the assignments each
time given, and they must hand over the assignments within the given time, late
assignments are not accepted. As well they should practically work on the project. All
assignments and practical work have 20% of the final marks
o 20% Midterm
Remember: Students must acquire 55 marks for passing otherwise will be considered fail.
4. Attendance Policy: Attending 75% of the class is to get the chance to final exam
otherwise will be counted as failure in the exam.
5. What should students do/ what should they want from the lecturer: Students in
their point of responsibilities should perform their activities on time, present classes
regularly, follow the regulations, participate in workshops, use library and Internet in
learning, and work collaboratively with faculty to achieve the goals and objectives of
the faculty.
Take benefit of the lecturer in learning issues, ask any kind of questions in the relevant
course, and share their suggestions and comments about the lectures, teaching
method and course assessment.
6. What should the lecturer do and what he wants from the students: The lecturer
should prepare reliable materials in lectures for better understanding of the students,
have a friendship environment with students to allow them ask any kind of questions
without any hesitation, attend classes on time, take students suggestions about their
views and understanding, and motivate them about the course/study materials.
The students must study, follow the lectures, attend lectures and manage the time,
do assignment, participate in practical classes, and follow the course/class policy
introduced in the course.
Thank you