Description
The purpose of this course is to provide the students with solid foundations in the basic concepts of programming: data structures and algorithms. The main objective of the course is to teach the students how to select and design data structures and algorithms that are appropriate for problems that they might encounter. This course is also about showing the correctness of algorithms and studying their computational complexities.
**COURSE OBJECTIVES**
1. To understand the design of fundamental data structures as well as algorithms that operate on them.
2. Analysis of Wide Range of Data Structures as well as Algorithms Available.
3. Comparison of Data Structures Based on their Analysis.
4. Implementing new Data Structures for the real time & industrial needs.
5. To provide rigorous ‘hands-on’ experience with implementing different data structures in a programming language.
**COURSE OUTCOMES**
By the end of this course, Students will understand:
1. Purpose and mathematical background of algorithm analysis and be able to apply this to determine the run time and memory usage of algorithms.
2. Abstract data types of stacks, queue and de-queue.
3. Variety of ways that linearly and weakly ordered data can be stored, accessed, and manipulated.
4. Characteristics and optimal behavior of hash tables for access and retrieval.
General Information
2. "Data Structures and Algorithms in C++", 2nd Edition By Micheal T. Goodrich, Roberto Tamassia and David Mount John Wiley and Sons, Inc.
3. "Algorithms" (4th Edition) By Robert Sedgewick & Kevin Wayne
4. "Introduction to Algorithms" By Thomas H Cormen, Charles E Leiserson,Ronald L Rivest, Clifford Stein MIT Press.
5. "Classic Data Structures" By Samanta Debasis.
6. "Data Structures and Algorithms Analysis in C++" By Clifford A Sheffard.
1. | Project/Presentation | 10%
2. | Assignments + Quiz | 10%
3. | Midterm | 20%
4. | Final | 40%
5. | Lab | 20%
Total | 100%
https://xlinux.nist.gov/dads/
2) http://algs4.cs.princeton.edu/home/
3) Sorting Algorithms Animations:
https://www.toptal.com/developers/sorting-algorithms/
4) The Sound of Sorting:
http://panthema.net/2013/sound-of-sorting/
5) Sorting visualizations by Carlo Zapponi:
http://sorting.at/
6) Analysis of Algorithms:
http://algs4.cs.princeton.edu/14analysis/
7) Algorithms Cheat Sheets:
http://algs4.cs.princeton.edu/cheatsheet/
8) Big-O Cheat Sheet:
http://bigocheatsheet.com/
9) C++ Programming Help:
https://www.tutorialspoint.com/cplusplus/
10) Building a Computer:
http://introcs.cs.princeton.edu/java/71boolean/
11) Theory of Computing:
http://introcs.cs.princeton.edu/java/51language/
12) Linear Algebra:
http://introcs.cs.princeton.edu/java/95linear/
Announcements
Please, check your final result on University SIS Portal. No further queries will be entertained now. Best of luck for your future endeavour.
The final result of Data Structures and Algorithms course has been posted on Piazza under the section of Exam. Your result will also be available on University SIS Portal on Monday August 28, 2017 at 2:00 pm. If you have any query related to final result, you can email me at my email address: muhammad.umer@cs.uol.edu.pk before 12 O'clock tomorrow. After tomorrow, no query would be handled.
Note:
Your assignments grading evaluated on following factors:
- Timely submission
- Plagiarism
- Desired output results
Sr. No. |
Reg. No. |
Student Name |
Quiz |
Assignment |
Lab |
Mid |
Final |
Total |
1 |
BSSE02151027 |
ALI WARIS |
5 |
13 |
19 |
19 |
28 |
84 |
2 |
BCS02143242 |
IMRAN NADEEM |
4 |
12 |
18 |
15 |
34 |
83 |
3 |
BSSE02151051 |
HAIDER KAMAL |
4 |
10 |
16 |
18 |
33 |
81 |
4 |
BSSE02151029 |
TAYYBA FAISAL |
5 |
12 |
19 |
15 |
24 |
75 |
5 |
BSSE02151005 |
HAFIZA FATIMA MAJEED |
4 |
12 |
16 |
16 |
22 |
70 |
6 |
BSSE02143226 |
MUHAMMAD AFTAB |
2 |
9 |
16 |
13 |
25 |
65 |
7 |
BCS02123153 |
NOUMAN WASEEM |
0 |
8 |
14 |
17 |
23 |
62 |
8 |
BCS02143111 |
MOHSIN JABBAR |
2 |
9 |
16 |
9 |
25 |
61 |
9 |
BCS02121025 |
WAHEED AHMAD |
0 |
6 |
13 |
10 |
31 |
60 |
10 |
BSSE02143067 |
ABDUL REHMAN |
0 |
8 |
15 |
7 |
30 |
60 |
11 |
BCS02123088 |
MUHAMMAD SALMAN |
0 |
4 |
13 |
11 |
22 |
50 |
12 |
BCS02123188 |
USMAN KHALID |
0 |
9 |
17 |
11 |
13 |
50 |
13 |
BCS02123682 |
DANIAL WAHEED |
1 |
5 |
16 |
11 |
17 |
50 |
14 |
BCS02133036 |
HAFIZ BILAL TARIQ |
2 |
7 |
13 |
9 |
19 |
50 |
15 |
BCS02133524 |
TASAWER BASHIR |
0 |
6 |
16 |
9 |
19 |
50 |
16 |
BCS02143172 |
HAIDER HUSSAIN CHAUD |
5 |
6 |
16 |
17 |
6 |
50 |
17 |
BCS02153278 |
HAFIZ MUHAMMAD QASIM |
1 |
7 |
12 |
15 |
15 |
50 |
18 |
BCS02143040 |
FAHAD AYUB |
4 |
7 |
12 |
5 |
6 |
34 |
19 |
BCS02141080 |
MUSTAFA HASSAN |
0 |
6 |
10 |
11 |
6 |
33 |
20 |
BCS02123215 |
RIZWAN SATTAR |
1 |
6 |
10 |
4 |
7 |
28 |
21 |
BSSE02153037 |
MUHAMMAD RIZWAN |
0 |
11 |
17 |
17 |
20 |
65 |
22 |
BSSE02153098 |
ATIQA NOOR |
0 |
8 |
16 |
11 |
20 |
55 |
23 |
BSSE02153239 |
SHAFAQ AYYUB |
0 |
6 |
13 |
17 |
14 |
50 |
24 |
BSSE02153236 |
ABDUL FASIH |
0 |
5 |
10 |
7 |
10 |
32 |
Here are following course contents included in Final Exam:
Searching and Sorting Algorithms
Stack, basic concept,
Implementation using arrays.
Implementation using Linked List and applications.
Queue basic concept.
Implementation using arrays.
Implementation using Linked List and applications.
Circular Queue And their applications
Viva and Revision
Trees concepts their applications , Analysis
Binary Tree
Min-Heap and Max-Heap Concepts, Operations, Analysis
Binary Search Tree, Different Operations.
Balanced Trees (AVL Trees), Their Implementation and Algorithmic Analysis
Pre Order , In order , Post Order Traversal
Example of Expression Tree , Post Fix and Infix
Evaluation of Expression (Infix to Postfix)
Evaluation of Expression (Evaluate Postfix expression, Infix to Prefix)
Evaluation of Expression (Prefix to Postfix)
Graph Theory in detail , Their Applications
The teaching staff has posted a new lecture notes resource.
Title: Lecture10.pdf
http://www.piazza.com/class_profile/get_resource/j3ujhem44xc14x/j6dqhapv38f10
Lecture date: Aug 15, 2017
You can view it on the course page: https://piazza.com/uol.edu.pk/summer2017/cs2112/resources
The teaching staff has posted a new lecture notes resource.
Title: Lecture09.pdf
http://www.piazza.com/class_profile/get_resource/j3ujhem44xc14x/j67oxw0koi11uv
Lecture date: Aug 11, 2017
You can view it on the course page: https://piazza.com/uol.edu.pk/summer2017/cs2112/resources
The teaching staff has posted a new lecture notes resource.
Title: Lecture08.pdf
http://www.piazza.com/class_profile/get_resource/j3ujhem44xc14x/j67ou1o1ihg6in
Lecture date: Aug 10, 2017
You can view it on the course page: https://piazza.com/uol.edu.pk/summer2017/cs2112/resources
Please, submit your quiz on the following link till tomorrow (Tuesday). After deadline, you cannot submit it, so, stick to due date and time.
Submission Deadline:
Tuesday 08, 2017, 12:00 PM.
Name | Office Hours | |
---|---|---|
Rao Muhammad Umer | When? Where? |