
The ________ given by DFS allow us to determine whether the graph contains any cycles. CS502
Order
Time stamps Page 130
BFS traversing
Topological sort
8.1.5 DFS  Cycles
The time stamps given by DFS allow us to determine a number of things about a graph or digraph.
For example, we can determine whether the graph contains any cycles. We do this with the help of the following two lemmas. 
► Optimal
► Nonoptimal
► Exponential
► Polynomial 
In graph theory and computer science, an adjacency list is a collection of unordered lists used to represent a finite graph. Each list describes the set of neighbors of a vertex in the graph. This is one of several commonly used representations of graphs for use in computer programs.

Consider that a tourist wants to travel between Karachi and Hunza cities in minimum possible span. The road map available has marked distance between each pair of adjacent cities. The time available to the tourist has limited and he/she require to find the shortest possible route between Karachi and Hunza.
In the given scenario, the possible solution may be adopted from the following set of algorithms.
Bellman ford’s Algorithm Flyod Warshal’s Algorithm Dijkstra's Algorithm Breadthfirstsearch algorithmYou are required to select the possible and most reasonable algorithm for the given scenario. Support you answer with solid reasons.

Assignment No. 03
SEMESTER Fall 2019
CS502 Fundamentals of Algorithms
Total Marks: 20Due Date: 15/01/2020
Instructions
Please read the following instructions carefully before solving & submitting assignment:
It should be clear that your assignment will not get any credit if:
• The assignment is submitted after due date.
• The submitted assignment does not open or file corrupt.
• The assignment is fully or partially copied from (other student or ditto copy from handouts or internet).
• Student ID is not mentioned in the assignment File or name of file is other than student ID.
• The assignment is not submitted in .doc or .docx format.
Uploading instructions
Your submission must include:• Assignment should be in .doc or .docx format.
• Save your assignment with your ID (e.g. bx180200786.doc).
Assignment submission through email is NOT acceptable
Objective
The objective of this assignment is
• To give basic knowledge and understanding of Graphs.
• To develop the understanding between adjacency list and adjacency matrix representations.Note:
Your answer must follow the below given specifications.
• Font style: “Times New Roman”
• Font color: “Black”
• Font size: “12”
• Bold for heading only.
• Font in Italic is not allowed at all.
• No formatting or bullets are allowed to use.
• Your answer should be precise and to the point, avoid irrelevant detail.Lectures Covered: This assignment covers Lecture # 28
Deadline
Your assignment must be uploaded/submitted at or before 15/01/2020.Assignment Statement:
Everywhere we see objects and some sort of interaction between them. If we are needed to model this connection or relationship between them, the graphs is a good way to model it.
A graph G = (V, E) consists of a finite set of vertices V (or nodes) and E, a binary relation on V called edges. E is a set of pairs from V. If a pair is ordered, we have a directed graph. For unordered pair, we have an undirected graph.
There are two ways of representing graphs: using an adjacency matrix and using an adjacency list.Question No 01: (Marks: 10)
Draw an undirected Graph for the following Adjacency list representation as given below,
Question No 02: (Marks: 10)
Draw a directed graph for the following matrix format representation,
=====================================Ended=======================================
For any query about the assignment, contact at [email protected]
GOOD LUCK

Assignment No. 02
SEMESTER Fall 2019
CS502 Fundamentals of Algorithms
Total Marks: 20Due Date: 27/11/2019
Instructions
Please read the following instructions carefully before solving & submitting assignment:
It should be clear that your assignment will not get any credit if:
• The assignment is submitted after due date.
• The submitted assignment does not open or file corrupt.
• The assignment is full or partially copied from (other student or ditto copy from handouts or internet).
• Student ID is not mentioned in the assignment File or name of file is other than student ID.
• The assignment is not submitted in .doc or .docx format.
Uploading instructions
Your submission must include:• Assignment should be in .doc or .docx format.
• Save your assignment with your ID (e.g. bx180200786.doc).
Assignment submission through email is NOT acceptable
Objective
The objective of this assignment is
• To give basic knowledge and understanding of Algorithms.
• To be able to design sorting algorithms.
• To be able to understand and calculate the complexity of algorithms.Note:
Your answer must follow the below given specifications.
• Font style: “Times New Roman”
• Font color: “Black”
• Font size: “12”
• Bold for heading only.
• Font in Italic is not allowed at all.
• No formatting or bullets are allowed to use.
• Your answer should be precise and to the point, avoid irrelevant detail.Lectures Covered: This assignment covers Lecture # 09  14
Deadline
Your assignment must be uploaded/submitted at or before 27/11/2019.Assignment diagram:
Consider the given diagram having an unsorted array and its sorting procedure through dry run. You are required to answer the following questions.Question No 01: (Marks: 5)
You are required to determine (write down the name) the algorithm being used while sorting the above given array.Question No 02: (Marks: 7)
You are required to design (write) the algorithm (Only Pseudo code) determined in Question 1.Question No 03: (Marks:
You are required to calculate (Step by Step) the worst case time complexity T(n) of the algorithm designed in Question No. 02.=====================================Ended=======================================
For any query about the assignment, contact at [email protected]
GOOD LUCK


Assignment No. 01 SEMESTER Fall 2019
CS502 Fundamentals of Algorithms
Total Marks: 20Due Date: 13/11/2019
Instructions
Please read the following instructions carefully before solving & submitting assignment:
It should be clear that your assignment will not get any credit if:
• The assignment is submitted after due date.
• The submitted assignment does not open or file corrupt.
• The assignment is full or partially copied from (other student or ditto copy from handouts or internet).
• Student ID is not mentioned in the assignment File or name of file is other than student ID.
• The assignment is not submitted in .doc or .docx format.
Uploading instructions
Your submission must include:• Assignment should be in .doc or .docx format.
• Save your assignment with your ID (e.g. bx180200786.doc).
Assignment submission through email is NOT acceptable
Objective
The objective of this assignment is
• To give basic knowledge and understanding of Algorithms.
• To be able to design simple algorithms.
• To be able to understand and calculate the complexity of algorithms.Note:
Your answer must follow the below given specifications.
• Font style: “Times New Roman”
• Font color: “Black”
• Font size: “12”
• Bold for heading only.
• Font in Italic is not allowed at all.
• No formatting or bullets are allowed to use.
• Your answer should be precise and to the point, avoid irrelevant detail.Lectures Covered: This assignment covers Lecture # 01  06
Deadline
Your assignment must be uploaded/submitted at or before 13/11/2019.Assignment Statement:
In mathematics Prime is a number which can be only divisible by 1 and itself. Examples of prime numbers are, 1 , 3 , 5 , 7 , 11 , 13 , 17 , 19 , 23 , 29 , 31 etc. When these numbers get large, then it is very difficult to manually identify them as to be prime or not prime. For example the numbers like, 443 and 44371 cannot easily identify as Prime.
There may be many algorithms which can be written for the identification of a number to be prime or not prime.Question No 01: (Marks: 10)
You are required to design (write) a simple algorithm (Only Pseudo code) which can identify a number to be Prime or Not Prime.Question No 02: (Marks: 10)
You are required to calculate (Step by Step) the worst case time complexity T(n) of the algorithm designed in Question No. 01.=====================================Ended=======================================
For any query about the assignment, contact at [email protected]
GOOD LUCK

CS502 Quiz 2 Solution and Discussion

The ________ given by DFS allow us to determine whether the graph contains any cycles. CS502

Order

Time stamps Page 130

BFS traversing

Topological sort
8.1.5 DFS  Cycles
The time stamps given by DFS allow us to determine a number of things about a graph or digraph.
For example, we can determine whether the graph contains any cycles. We do this with the help of the following two lemmas. 

@Ainhashmi you can choose in categories where you expect.

@moaaz said in CS502 Quiz 2 Solution and Discussion:
What general property of the list indicates that the graph has an isolated vertex?
The Isolated vertex is not handled in list.

What general property of the list indicates that the graph has an isolated vertex?

There is Null pointer at the end of list.

The Isolated vertex is not handled in list.

Only one value is entered in the list.

There is at least one null list.


@moaaz okey… But it’s not understood coz It’s not my subject

@moaaz ok.

A graph is not connected if every vertex can reach every other vertex. CS502
 True
 False Page No. 116
A graph is said to be acyclic if it contains no cycles. A graph is connected if every vertex can reach every other vertex. A directed graph that is acyclic is called a directed acyclic graph (DAG). 
In strong components algorithm, first of all DFS is run for computing finish times of vertices. CS502
 True Page No.138
 False
This is presented in Figure 8.37. Recall that the component DAG consists of super vertices.

In strong components algorithm, first of all DFS is run for computing finish times of vertices. CS502
 [d[u], f[u]]⊆[d[v], f[v]]
 [d[u], f[u]]⊇[d[v], f[v]]
 unrelated Page No.129
 Disjoint
The ancestor and descendent relation can be nicely inferred by the parenthesis lemma. u is a descendent of v if and only if [d[u], f[u]]⊆[d[v], f[v]]. u is a ancestor of v if and only if[d[u], f[u]]⊇[d[v], f[v]]. u is unrelated to v if and only if[d[u], f[u]]and[d[v], f[v]]are disjoint. The is shown in Figure 8.26. The width of the rectangle associated with a vertex is equal to the time the vertex was discovered till the time the vertex was completely processed (colored black). Imagine an opening parenthesis ‘(’ at the start of the rectangle and and closing parenthesis ‘)’ at the end of the rectangle. The rectangle (parentheses) for vertex ‘b’ is completely enclosed by the rectangle for ‘a’. Rectangle for ‘c’ is completely enclosed by vertex ‘b’ rectangle.

For traversing graphs, Breadthfirst search can be visualized as a wave front propagating inwards towards root (or source) node. CS502
 True
 False Page No.117
Breadthfirst Search:
Here is a more efficient algorithm called the breadthfirst search (BFS) Start with s and visit its adjacent nodes. Label them with distance 1. Now consider the neighbors of neighbors of s. These would be at distance 2. Now consider the neighbors of neighbors of neighbors of s. These would be at distance 3. Repeat this until no more unvisited neighbors left to visit. The algorithm can be visualized as a wave front propagating outwards from s visiting the vertices in bands at ever increasing distances from s. 
Digraphs are not used in communication and transportation networks. CS502
 True
 False Page No.135
Strong Components:
We consider an important connectivity problem with digraphs. When diagraphs are used in communication and transportation networks, people want to know that their networks are complete. 
You have an adjacency list for G, what is the time complexity to compute Graph transpose G^T.? CS502 ?
 (V + E) Page No.138
 V E
 V
 E
We will discuss the algorithm without proof. Define GT to be the digraph with the same vertex set at G but in which all edges have been reversed in direction. This is shown in Figure 8.38. Given an adjacency list for G, it is possible to compute G Tin Θ (V+E) time.

In computing the strongly connected components of a digraph, vertices of the digraph are not partitioned into subsets. CS502
 True
 False Page No.135
We partition the vertices of the digraph into subsets such that the induced sub graph of each subset is strongly connected.

There are no ________ edges in undirected graph. CS502
 Forward
 Back
 Cross
 Both Forward and Back Page No. 130
For undirected graphs, there is no distinction between forward and back edges. 
We say that two vertices u and v are mutually not reachable if u can reach v and vice versa. CS502
 True Page No. 135
 False
A digraph is strongly connected if for every pair of vertices u, v∈V,u can reach v and vice versa.